decl.c (register_dtor_fn): Pass the address of dso_handle, not dso_handle itself, to __cxa_atexit.

* decl.c (register_dtor_fn): Pass the address of dso_handle, not
	dso_handle itself, to __cxa_atexit.

From-SVN: r52354
This commit is contained in:
Mark Mitchell 2002-04-16 03:17:57 +00:00 committed by Mark Mitchell
parent 861829ed08
commit 0f2680051d
2 changed files with 8 additions and 1 deletions

View file

@ -1,3 +1,8 @@
2002-04-15 Mark Mitchell <mark@codesourcery.com>
* decl.c (register_dtor_fn): Pass the address of dso_handle, not
dso_handle itself, to __cxa_atexit.
2002-04-15 Gabriel Dos Reis <gdr@merlin.codesourcery.com> 2002-04-15 Gabriel Dos Reis <gdr@merlin.codesourcery.com>
* error.c (cxx_print_error_function): Adjust call to macros. * error.c (cxx_print_error_function): Adjust call to macros.

View file

@ -8608,7 +8608,9 @@ register_dtor_fn (decl)
cleanup = build_unary_op (ADDR_EXPR, cleanup, 0); cleanup = build_unary_op (ADDR_EXPR, cleanup, 0);
if (flag_use_cxa_atexit) if (flag_use_cxa_atexit)
{ {
args = tree_cons (NULL_TREE, get_dso_handle_node (), NULL_TREE); args = tree_cons (NULL_TREE,
build_unary_op (ADDR_EXPR, get_dso_handle_node (), 0),
NULL_TREE);
args = tree_cons (NULL_TREE, null_pointer_node, args); args = tree_cons (NULL_TREE, null_pointer_node, args);
args = tree_cons (NULL_TREE, cleanup, args); args = tree_cons (NULL_TREE, cleanup, args);
} }