Commit 131376b3 by Nicola Pero Committed by Nicola Pero

In gcc/cp/: 2010-10-17 Nicola Pero <nicola.pero@meta-innovation.com>

In gcc/cp/:
2010-10-17  Nicola Pero  <nicola.pero@meta-innovation.com>

        Merge from apple/trunk branch on FSF servers.

        2006-04-19 Fariborz Jahanian <fjahanian@apple.com>

        Radar 4516785
        * parser.c (cp_parser_simple_type_specifier): Don't lookup for
        objc object types if type is scope qualified.

In gcc/testsuite/:
2010-10-17  Nicola Pero  <nicola.pero@meta-innovation.com>

        Merge from 'apple/trunk' branch on FSF servers.

        2006-04-19 Fariborz Jahanian <fjahanian@apple.com>

        Radar 4516785
        * obj-c++.dg/method-namespace-2.mm: New.

From-SVN: r165602
parent 90fbfdc3
2010-10-17 Nicola Pero <nicola.pero@meta-innovation.com>
Merge from apple/trunk branch on FSF servers.
2006-04-19 Fariborz Jahanian <fjahanian@apple.com>
Radar 4516785
* parser.c (cp_parser_simple_type_specifier): Don't lookup for
objc object types if type is scope qualified.
2010-10-17 Nicola Pero <nicola.pero@meta-innovation.com>
Merge from apple/trunk branch on FSF servers.
2006-03-27 Fariborz Jahanian <fjahanian@apple.com>
......
......@@ -12753,7 +12753,7 @@ cp_parser_simple_type_specifier (cp_parser* parser,
/* As a last-ditch effort, see if TYPE is an Objective-C type.
If it is, then the '<'...'>' enclose protocol names rather than
template arguments, and so everything is fine. */
if (c_dialect_objc ()
if (c_dialect_objc () && !parser->scope
&& (objc_is_id (type) || objc_is_class_name (type)))
{
tree protos = cp_parser_objc_protocol_refs_opt (parser);
......
2010-10-17 Nicola Pero <nicola.pero@meta-innovation.com>
Merge from 'apple/trunk' branch on FSF servers.
2006-04-19 Fariborz Jahanian <fjahanian@apple.com>
Radar 4516785
* obj-c++.dg/method-namespace-2.mm: New.
2010-10-17 Nicola Pero <nicola.pero@meta-innovation.com>
Merge from 'apple/trunk' branch on FSF servers.
2006-03-27 Fariborz Jahanian <fjahanian@apple.com>
......
/* Test that qualified type is resolved to its proper type. */
/* { dg-do compile } */
@interface Object
{
int I[100];
}
@end
namespace HC
{
struct Object
{
void test();
};
} // namespace HC
int main()
{
HC::Object* object;
object->test(); // Must compile with no error
return 0;
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment