detect C++ errors to fix 2288 and 18770
detect C++ errors to fix 2288 and 18770 gcc/cp/ PR c++/2288 PR c++/18770 * name-lookup.h (enum scope_kind): Add sk_cond. * name-lookup.c (pushdecl_maybe_friend): Get scope of shadowed local. Detect and report error for redeclaration from for-init or if or switch condition. (begin_scope): Handle sk_cond. * semantics.c (begin_if_stmt): Use sk_cond. (begin switch_stmt): Ditto. gcc/testsuite/ PR c++/2288 PR c++/18770 * g++.old-deja/g++.jason/cond.C: Remove xfails. * g++.dg/parse/pr18770.C: New test. * g++.dg/cpp0x/range-for5.C: Add dg-error marker. Co-Authored-By: Nathan Froyd <froydnj@codesourcery.com> From-SVN: r174307
Showing
gcc/testsuite/g++.dg/parse/pr18770.C
0 → 100644
Please
register
or
sign in
to comment