aboutsummaryrefslogtreecommitdiff
path: root/gcc/cp/pt.c
diff options
context:
space:
mode:
authorMark Mitchell <mark@codesourcery.com>2000-10-31 01:30:59 +0000
committerMark Mitchell <mmitchel@gcc.gnu.org>2000-10-31 01:30:59 +0000
commitad50e811dc95387b52dddd7ab753db59512a3baf (patch)
tree62873128afbebb3b4075750f0c2dbc4160b90b4b /gcc/cp/pt.c
parent4bc950092b4a22757f6893f53c1d1ad8fd85381b (diff)
downloadgcc-ad50e811dc95387b52dddd7ab753db59512a3baf.zip
gcc-ad50e811dc95387b52dddd7ab753db59512a3baf.tar.gz
gcc-ad50e811dc95387b52dddd7ab753db59512a3baf.tar.bz2
cp-tree.h (DECL_EXTERNAL_LINKAGE_P): New macro.
* cp-tree.h (DECL_EXTERNAL_LINKAGE_P): New macro. (linkage_kind): New enumeration. (decl_linkage): New function. * decl2.c (comdat_linkage): Extend comment. * error.c (dump_function_decl): Print the arguments used to instantiate a template, even when not printing the type of the function. * pt.c (convert_nontype_argument): Use DECL_EXTERNAL_LINKAGE_P, not TREE_PUBLIC, to test for external linkage. * tree.c (decl_linkage): New function. From-SVN: r37150
Diffstat (limited to 'gcc/cp/pt.c')
-rw-r--r--gcc/cp/pt.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/gcc/cp/pt.c b/gcc/cp/pt.c
index 8ca2468..303a3c6 100644
--- a/gcc/cp/pt.c
+++ b/gcc/cp/pt.c
@@ -2808,7 +2808,7 @@ convert_nontype_argument (type, expr)
;
else if (TREE_CODE (referent) != VAR_DECL)
goto bad_argument;
- else if (!TREE_PUBLIC (referent))
+ else if (!DECL_EXTERNAL_LINKAGE_P (referent))
{
cp_error ("address of non-extern `%E' cannot be used as template argument", referent);
return error_mark_node;
@@ -2915,7 +2915,7 @@ convert_nontype_argument (type, expr)
if (fn == error_mark_node)
return error_mark_node;
- if (!TREE_PUBLIC (fn))
+ if (!DECL_EXTERNAL_LINKAGE_P (fn))
{
if (really_overloaded_fn (fns))
return error_mark_node;
@@ -2980,7 +2980,7 @@ convert_nontype_argument (type, expr)
if (fn == error_mark_node)
return error_mark_node;
- if (!TREE_PUBLIC (fn))
+ if (!DECL_EXTERNAL_LINKAGE_P (fn))
{
if (really_overloaded_fn (expr))
/* Don't issue an error here; we might get a different