parser.c (260918) | parser.c (260932) |
---|---|
1/* C++ Parser. 2 Copyright (C) 2000, 2001, 2002, 2003, 2004, 3 2005 Free Software Foundation, Inc. 4 Written by Mark Mitchell <mark@codesourcery.com>. 5 6 This file is part of GCC. 7 8 GCC is free software; you can redistribute it and/or modify it --- 10323 unchanged lines hidden (view full) --- 10332 if (tag_type == typename_type 10333 && TREE_CODE (parser->scope) != NAMESPACE_DECL) 10334 return cp_parser_make_typename_type (parser, parser->scope, 10335 identifier); 10336 /* Look up a qualified name in the usual way. */ 10337 if (parser->scope) 10338 { 10339 tree decl; | 1/* C++ Parser. 2 Copyright (C) 2000, 2001, 2002, 2003, 2004, 3 2005 Free Software Foundation, Inc. 4 Written by Mark Mitchell <mark@codesourcery.com>. 5 6 This file is part of GCC. 7 8 GCC is free software; you can redistribute it and/or modify it --- 10323 unchanged lines hidden (view full) --- 10332 if (tag_type == typename_type 10333 && TREE_CODE (parser->scope) != NAMESPACE_DECL) 10334 return cp_parser_make_typename_type (parser, parser->scope, 10335 identifier); 10336 /* Look up a qualified name in the usual way. */ 10337 if (parser->scope) 10338 { 10339 tree decl; |
10340 tree ambiguous_decls; |
|
10340 10341 decl = cp_parser_lookup_name (parser, identifier, 10342 tag_type, 10343 /*is_template=*/false, 10344 /*is_namespace=*/false, 10345 /*check_dependency=*/true, | 10341 10342 decl = cp_parser_lookup_name (parser, identifier, 10343 tag_type, 10344 /*is_template=*/false, 10345 /*is_namespace=*/false, 10346 /*check_dependency=*/true, |
10346 /*ambiguous_decls=*/NULL); | 10347 &ambiguous_decls); |
10347 | 10348 |
10349 /* If the lookup was ambiguous, an error will already have been 10350 issued. */ 10351 if (ambiguous_decls) 10352 return error_mark_node; 10353 |
|
10348 /* If we are parsing friend declaration, DECL may be a 10349 TEMPLATE_DECL tree node here. However, we need to check 10350 whether this TEMPLATE_DECL results in valid code. Consider 10351 the following example: 10352 10353 namespace N { 10354 template <class T> class C {}; 10355 } --- 9159 unchanged lines hidden --- | 10354 /* If we are parsing friend declaration, DECL may be a 10355 TEMPLATE_DECL tree node here. However, we need to check 10356 whether this TEMPLATE_DECL results in valid code. Consider 10357 the following example: 10358 10359 namespace N { 10360 template <class T> class C {}; 10361 } --- 9159 unchanged lines hidden --- |