OSDN Git Service
(root)
/
pf3gnuchains
/
gcc-fork.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
/cp
[pf3gnuchains/gcc-fork.git]
/
gcc
/
cp
/
parser.c
diff --git
a/gcc/cp/parser.c
b/gcc/cp/parser.c
index
fa82cf2
..
cdb524e
100644
(file)
--- a/
gcc/cp/parser.c
+++ b/
gcc/cp/parser.c
@@
-14035,12
+14035,14
@@
cp_parser_elaborated_type_specifier (cp_parser* parser,
typename_type,
/*complain=*/tf_error);
/* If the `typename' keyword is in effect and DECL is not a type
typename_type,
/*complain=*/tf_error);
/* If the `typename' keyword is in effect and DECL is not a type
- decl
. Then type is non exista
nt. */
+ decl
, then type is non existe
nt. */
else if (tag_type == typename_type && TREE_CODE (decl) != TYPE_DECL)
else if (tag_type == typename_type && TREE_CODE (decl) != TYPE_DECL)
-
type = NULL_TREE
;
- else
- type = check_elaborated_type_specifier (tag_type, decl,
+ ;
+ else
if (TREE_CODE (decl) == TYPE_DECL)
+
type = check_elaborated_type_specifier (tag_type, decl,
/*allow_template_p=*/true);
/*allow_template_p=*/true);
+ else if (decl == error_mark_node)
+ type = error_mark_node;
}
if (!type)
}
if (!type)