aboutsummaryrefslogtreecommitdiff
path: root/gcc/cp/lex.c
diff options
context:
space:
mode:
authorNathan Sidwell <nathan@acm.org>2017-08-17 15:56:49 +0000
committerNathan Sidwell <nathan@gcc.gnu.org>2017-08-17 15:56:49 +0000
commit776ff3efa9de7fce8b117b9f6388f317d447cb92 (patch)
tree34ec29e83dc4237f4babd5d27764dc86cb350784 /gcc/cp/lex.c
parentd00fdf85796a83a6b38f5cb16e287ba31bae7ce8 (diff)
downloadgcc-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.c11
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;