summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--ChangeLog6
-rw-r--r--elaborate.cxx4
2 files changed, 8 insertions, 2 deletions
diff --git a/ChangeLog b/ChangeLog
index 435421c1..431fabed 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+2009-02-18 Frank Ch. Eigler <fche@elastic.org>
+
+ PR9719.
+ * elaborate.cxx (typeresolution_info::mismatch): Initialize
+ some locals so optimized code works too.
+
2009-02-18 Rajan Arora <rarora@redhat.com>
* testuite/semko/typemismatch.stp: New test.
diff --git a/elaborate.cxx b/elaborate.cxx
index 25c52c33..0a00ebf2 100644
--- a/elaborate.cxx
+++ b/elaborate.cxx
@@ -3987,7 +3987,7 @@ typeresolution_info::invalid (const token* tok, exp_type pe)
void
typeresolution_info::mismatch (const token* tok, exp_type t1, exp_type t2)
{
- bool tok_resolved;
+ bool tok_resolved = false;
size_t i;
semantic_error* err1 = 0;
num_still_unresolved ++;
@@ -4018,7 +4018,7 @@ typeresolution_info::mismatch (const token* tok, exp_type t1, exp_type t2)
}
else
{
- bool tok_printed;
+ bool tok_printed = false;
for (size_t j=0; j<printed_toks.size(); j++)
{
if (printed_toks[j] == resolved_toks[i])