Commit 1b28d441 by Mark Mitchell Committed by Mark Mitchell

method.c (use_thunk): Make sure that thunks really are emitted when requested.

	* method.c (use_thunk): Make sure that thunks really are emitted
	when requested.

From-SVN: r41621
parent f24fd724
2001-04-26 Mark Mitchell <mark@codesourcery.com>
* method.c (use_thunk): Make sure that thunks really are emitted
when requested.
2001-04-26 Nathan Sidwell <nathan@codesourcery.com> 2001-04-26 Nathan Sidwell <nathan@codesourcery.com>
* mangle.c (write_chars): New macro. * mangle.c (write_chars): New macro.
......
...@@ -377,7 +377,8 @@ make_thunk (function, delta, vcall_index, generate_with_vtable_p) ...@@ -377,7 +377,8 @@ make_thunk (function, delta, vcall_index, generate_with_vtable_p)
return thunk; return thunk;
} }
/* Emit the definition of a C++ multiple inheritance vtable thunk. */ /* Emit the definition of a C++ multiple inheritance vtable thunk. If
EMIT_P is non-zero, the thunk is emitted immediately. */
void void
use_thunk (thunk_fndecl, emit_p) use_thunk (thunk_fndecl, emit_p)
...@@ -519,6 +520,11 @@ use_thunk (thunk_fndecl, emit_p) ...@@ -519,6 +520,11 @@ use_thunk (thunk_fndecl, emit_p)
DECL_INITIAL (thunk_fndecl) = make_node (BLOCK); DECL_INITIAL (thunk_fndecl) = make_node (BLOCK);
BLOCK_VARS (DECL_INITIAL (thunk_fndecl)) BLOCK_VARS (DECL_INITIAL (thunk_fndecl))
= DECL_ARGUMENTS (thunk_fndecl); = DECL_ARGUMENTS (thunk_fndecl);
/* Since we want to emit the thunk, we explicitly mark its name as
referenced. */
TREE_SYMBOL_REFERENCED (DECL_ASSEMBLER_NAME (thunk_fndecl)) = 1;
expand_body (finish_function (0)); expand_body (finish_function (0));
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment