decl.c (maybe_commonize_var): Make the code match the comments.

* decl.c (maybe_commonize_var): Make the code match the comments.
	* pt.c (instantiate_decl): Move call to import_export_decl.

From-SVN: r66135
This commit is contained in:
Mark Mitchell 2003-04-27 19:33:38 +00:00 committed by Mark Mitchell
parent 32a619073c
commit 0b50d7f182
3 changed files with 14 additions and 6 deletions

View File

@ -1,3 +1,8 @@
2003-04-27 Mark Mitchell <mark@codesourcery.com>
* decl.c (maybe_commonize_var): Make the code match the comments.
* pt.c (instantiate_decl): Move call to import_export_decl.
2003-04-26 Mark Mitchell <mark@codesourcery.com>
* decl2.c (finish_file): Fix merge botch.

View File

@ -7337,11 +7337,14 @@ maybe_commonize_var (tree decl)
if (TREE_STATIC (decl)
/* Don't mess with __FUNCTION__. */
&& ! DECL_ARTIFICIAL (decl)
&& current_function_decl
&& DECL_CONTEXT (decl) == current_function_decl
&& (DECL_DECLARED_INLINE_P (current_function_decl)
|| DECL_TEMPLATE_INSTANTIATION (current_function_decl))
&& TREE_PUBLIC (current_function_decl))
&& DECL_FUNCTION_SCOPE_P (decl)
/* Unfortunately, import_export_decl has not always been called
before the function is processed, so we cannot simply check
DECL_COMDAT. */
&& (DECL_COMDAT (decl)
|| ((DECL_DECLARED_INLINE_P (DECL_CONTEXT (decl))
|| DECL_TEMPLATE_INSTANTIATION (DECL_CONTEXT (decl)))
&& TREE_PUBLIC (DECL_CONTEXT (decl)))))
{
/* If flag_weak, we don't need to mess with this, as we can just
make the function weak, and let it refer to its unique local

View File

@ -10998,6 +10998,7 @@ instantiate_decl (d, defer_ok)
NULL);
/* Set up context. */
import_export_decl (d);
start_function (NULL_TREE, d, NULL_TREE, SF_PRE_PARSED);
/* Create substitution entries for the parameters. */
@ -11028,7 +11029,6 @@ instantiate_decl (d, defer_ok)
/* Finish the function. */
d = finish_function (0);
import_export_decl (d);
expand_body (d);
}