aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
Diffstat (limited to 'gcc')
-rw-r--r--gcc/cp/ChangeLog5
-rw-r--r--gcc/cp/parser.c9
2 files changed, 8 insertions, 6 deletions
diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog
index 9e5788a..517de89 100644
--- a/gcc/cp/ChangeLog
+++ b/gcc/cp/ChangeLog
@@ -1,3 +1,8 @@
+2006-04-12 Mark Mitchell <mark@codesourcery.com>
+
+ * parser.c (cp_parser_init_declarator): Initialize local variables
+ aggressively.
+
2006-04-12 Roger Sayle <roger@eyesopen.com>
* parser.c (cp_parser_init_declarator): Initialise
diff --git a/gcc/cp/parser.c b/gcc/cp/parser.c
index e96165b..fede4df 100644
--- a/gcc/cp/parser.c
+++ b/gcc/cp/parser.c
@@ -11093,6 +11093,9 @@ cp_parser_init_declarator (cp_parser* parser,
}
/* Parse the initializer. */
+ initializer = NULL_TREE;
+ is_parenthesized_init = false;
+ is_non_constant_init = true;
if (is_initialized)
{
if (declarator->kind == cdk_function
@@ -11104,12 +11107,6 @@ cp_parser_init_declarator (cp_parser* parser,
&is_parenthesized_init,
&is_non_constant_init);
}
- else
- {
- initializer = NULL_TREE;
- is_parenthesized_init = false;
- is_non_constant_init = true;
- }
/* The old parser allows attributes to appear after a parenthesized
initializer. Mark Mitchell proposed removing this functionality