diff options
author | Nathan Sidwell <nathan@acm.org> | 2017-08-17 15:56:49 +0000 |
---|---|---|
committer | Nathan Sidwell <nathan@gcc.gnu.org> | 2017-08-17 15:56:49 +0000 |
commit | 776ff3efa9de7fce8b117b9f6388f317d447cb92 (patch) | |
tree | 34ec29e83dc4237f4babd5d27764dc86cb350784 /gcc/cp/lex.c | |
parent | d00fdf85796a83a6b38f5cb16e287ba31bae7ce8 (diff) | |
download | gcc-776ff3efa9de7fce8b117b9f6388f317d447cb92.zip gcc-776ff3efa9de7fce8b117b9f6388f317d447cb92.tar.gz gcc-776ff3efa9de7fce8b117b9f6388f317d447cb92.tar.bz2 |
lex.c (maybe_add_lang_type_raw): BOUND_TEMPLATE_TEMPLATE_PARMs don't need lang_type.
* lex.c (maybe_add_lang_type_raw): BOUND_TEMPLATE_TEMPLATE_PARMs
don't need lang_type.
(cxx_make_type): Use maybe_add_lang_type_raw return value.
* mangle.c (CLASSTYPE_TEMPLATE_ID_P): Don't rely on
TYPE_LANG_SPECIFIC.
From-SVN: r251154
Diffstat (limited to 'gcc/cp/lex.c')
-rw-r--r-- | gcc/cp/lex.c | 11 |
1 files changed, 4 insertions, 7 deletions
diff --git a/gcc/cp/lex.c b/gcc/cp/lex.c index 097fbb5..b22d287 100644 --- a/gcc/cp/lex.c +++ b/gcc/cp/lex.c @@ -809,8 +809,7 @@ copy_type (tree type MEM_STAT_DECL) static bool maybe_add_lang_type_raw (tree t) { - if (!(RECORD_OR_UNION_CODE_P (TREE_CODE (t)) - || TREE_CODE (t) == BOUND_TEMPLATE_TEMPLATE_PARM)) + if (!RECORD_OR_UNION_CODE_P (TREE_CODE (t))) return false; TYPE_LANG_SPECIFIC (t) @@ -831,12 +830,10 @@ cxx_make_type (enum tree_code code) { tree t = make_node (code); - maybe_add_lang_type_raw (t); - - /* Set up some flags that give proper default behavior. */ - if (RECORD_OR_UNION_CODE_P (code)) + if (maybe_add_lang_type_raw (t)) { - struct c_fileinfo *finfo = \ + /* Set up some flags that give proper default behavior. */ + struct c_fileinfo *finfo = get_fileinfo (LOCATION_FILE (input_location)); SET_CLASSTYPE_INTERFACE_UNKNOWN_X (t, finfo->interface_unknown); CLASSTYPE_INTERFACE_ONLY (t) = finfo->interface_only; |