Extend thread-related debug messages.
All interior pointers must be enabled for finalized allocation.

* include/gc_disclaim.h: Add note about all-interior-pointers requirement.
* fnlz_mlc.c (GC_init_finalized_malloc): Abort with a useful message if all
interior pointers are not enabled.
* tests/disclaim_bench.c, tests/disclaim_test.c: Enable all interior
pointers for tests.
Move finalizer closure to the end of objects.

* fnlz_mlc.c: Move finalizer closure for finalized object kinds to the end
of objects.  This way, we don't require all interior pointers, and GC_base
returns the expected address.
* tests/disclaim_test.c: Improve test coverage.
Remove closure data from GC_register_disclaim_proc.

* include/gc_disclaim.h, fnlz_mlc.c (GC_disclaim_proc, GC_register_disclaim_proc):
Remove CD from typedef and function.
* reclaim.c (GC_reclaim_uninit, GC_reclaim_block): Adjust calls.
* include/private/gc_priv.h, misc.c: Remove CD from object kind struct and
initializers.
Export GC_push manipulation functions and function pointer.

* include/private/gc_priv.h, include/gc_mark.h: Move GC_push_all,
GC_push_conditional and GC_push_other_roots to a public header and adjust
prototypes and comment.
* mark.c, os_dep.c: Adjust prototypes accordingly.
Elaborate comment on dependencies in autogen.sh.
Fix unportable '==' test operators in configure

* configure.ac: Replace all unportable '==' test operators with '='
ones.
Update AUTHORS (add email)
Update ChangeLog file
Include "config.h" instead of "private/config.h" on HAVE_CONFIG_H
(Change the behavior of HAVE_CONFIG_H macro to the standard one
which assumes that no folder is specified in #include "config.h".)

* configure.ac (AM_CONFIG_HEADER): Replace include/private/config.h to
include/config.h.
* cord/cordbscs.c: Include "config.h" (instead of "private/config.h")
if HAVE_CONFIG_H defined.
* cord/cordprnt.c: Likewise.
* cord/cordxtra.c: Likewise.
* gc_cpp.cc: Likewise.
* include/private/gc_pmark.h: Likewise.
* include/private/gc_priv.h: Likewise.
* real_malloc.c: Likewise.
* tests/disclaim_test.c: Likewise.
* tests/initsecondarythread.c: Likewise.
* tests/subthread_create.c: Likewise.
* tests/test.c: Likewise.
* tests/test_cpp.cc: Likewise.
* tests/thread_leak_test.c: Likewise.
* tests/threadkey_test.c: Likewise.
.gitignore: remove path prefix for config.h and stamp-h1

* .gitignore: Add include/config.h.in (to ignore); remove path for
config.h and stamp-h1 (to ignore files both located in /include/private
(old behavior) and in /include folders).
Update ChangeLog file
.gitignore: Remove old /include/private/config.h.in entry
Eliminate 'missing exception specification' warning in gc_cpp.cc (Clang)

* gc_cpp.cc (GC_NEW_DELETE_NEED_THROW): Define new macro (if not defined
yet) for GCC v4.2+ (or clang).
* gc_cpp.cc: Include new (for std::bad_alloc) if
GC_NEW_DELETE_NEED_THROW.
* gc_cpp.cc (GC_DECL_NEW_THROW, GC_DECL_DELETE_THROW): New macros
(used to eliminate compiler "missing exception specification" warning
for 'new' and 'delete' operators).
* gc_cpp.cc (new, delete, new[], delete[]): Use
GC_DECL_NEW/DELETE_THROW to define 'throw' clause properly.
Update ChangeLog file
Fix GC_get_stack_base assembly code (Cygwin/Clang)

* os_dep.c (GC_get_stack_base): Use inline assembly statement instead
of variable assembly attribute (to workaround clang 3.1 linkage error
on Cygwin).
Update ChangeLog and AUTHORS files
Use GC_noop1 instead of GC_noop in GC_pause; remove duplicate GC_noop1
prototype (minor code refactoring)

* include/private/gc_locks.h (GC_noop1): Remove prototype (since
already declared in gc_priv.h).
* pthread_support.c (GC_pause): Replace varargs GC_noop invocation
(with a single argument) to GC_noop1.
Remove dummy GC_noop call from code visible to Lint tool only
(Minor code refactoring.)

* misc.c (GC_init): Remove dummy GC_noop call from Lint-only code.
* tests/test.c (main): Likewise.
Replace var-args GC_noop with fixed-args one
(to suppress Clang warning that arguments were dropped)

* alloc.c (GC_stopped_mark, GC_try_to_collect_general): Use GC_noop6
instead of var-args GC_noop.
* include/private/gc_priv.h (GC_noop): Replace var-args (and
platform-specific) prototype with GC_noop6 one.
* mark.c (GC_noop): Replace with GC_noop6 (with all arguments
ignored); refine comment.