diff options
author | Nicola Pero <nicola@gcc.gnu.org> | 2010-10-07 17:17:22 +0000 |
---|---|---|
committer | Nicola Pero <nicola@gcc.gnu.org> | 2010-10-07 17:17:22 +0000 |
commit | 3cfa8f8272176e74a0a8ac2075a3d55046a44652 (patch) | |
tree | 26fcd9635e015e16a3b1d3002eab69dbff7c1483 /gcc | |
parent | fc37536b9da32b31dbe2ba094ccfb615e1fc380a (diff) | |
download | gcc-3cfa8f8272176e74a0a8ac2075a3d55046a44652.zip gcc-3cfa8f8272176e74a0a8ac2075a3d55046a44652.tar.gz gcc-3cfa8f8272176e74a0a8ac2075a3d55046a44652.tar.bz2 |
In gcc/cp/: 2010-10-07 Nicola Pero <nicola@nicola.brainstorm.co.uk>
In gcc/cp/:
2010-10-07 Nicola Pero <nicola@nicola.brainstorm.co.uk>
Merge from apple/trunk branch on FSF servers.
2006-04-26 Fariborz Jahanian <fjahanian@apple.com>
Radar 4508851
* parser.c (cp_parser_objc_interstitial_code): Recognize
and parse RID_NAMESPACE keyword.
In gcc/testsuite/:
2010-10-07 Nicola Pero <nicola.pero@meta-innovation.com>
Merge from 'apple/trunk' branch on FSF servers.
2006-04-26 Fariborz Jahanian <fjahanian@apple.com>
Radar 4508851
* obj-c++.dg/method-namespace-1.mm: New.
From-SVN: r165125
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/cp/ChangeLog | 12 | ||||
-rw-r--r-- | gcc/cp/parser.c | 2 | ||||
-rw-r--r-- | gcc/testsuite/ChangeLog | 9 | ||||
-rw-r--r-- | gcc/testsuite/obj-c++.dg/method-namespace-1.mm | 29 |
4 files changed, 51 insertions, 1 deletions
diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog index ac07e63..7e6bdda 100644 --- a/gcc/cp/ChangeLog +++ b/gcc/cp/ChangeLog @@ -1,6 +1,16 @@ +2010-10-07 Nicola Pero <nicola@nicola.brainstorm.co.uk> + + Merge from apple/trunk branch on FSF servers. + + 2006-04-26 Fariborz Jahanian <fjahanian@apple.com> + + Radar 4508851 + * parser.c (cp_parser_objc_interstitial_code): Recognize + and parse RID_NAMESPACE keyword. + 2010-10-07 Iain Sandoe <iains@gcc.gnu.org> - parser.c (cp_parser_objc_method_tail_params_opt): Peek new token after + * parser.c (cp_parser_objc_method_tail_params_opt): Peek new token after finding ellipsis, before checking for attributes. 2010-10-06 Nicola Pero <nicola.pero@meta-innovation.com> diff --git a/gcc/cp/parser.c b/gcc/cp/parser.c index 6c842df..f5fa793 100644 --- a/gcc/cp/parser.c +++ b/gcc/cp/parser.c @@ -21635,6 +21635,8 @@ cp_parser_objc_interstitial_code (cp_parser* parser) cp_lexer_consume_token (parser->lexer); objc_set_method_opt (false); } + else if (token->keyword == RID_NAMESPACE) + cp_parser_namespace_definition (parser); /* Other stray characters must generate errors. */ else if (token->type == CPP_OPEN_BRACE || token->type == CPP_CLOSE_BRACE) { diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 12be369..c8f841e 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,12 @@ +2010-10-07 Nicola Pero <nicola.pero@meta-innovation.com> + + Merge from 'apple/trunk' branch on FSF servers. + + 2006-04-26 Fariborz Jahanian <fjahanian@apple.com> + + Radar 4508851 + * obj-c++.dg/method-namespace-1.mm: New. + 2010-10-07 Martin Jambor <mjambor@suse.cz> * gcc.dg/tree-ssa/sra-11.c: New test. diff --git a/gcc/testsuite/obj-c++.dg/method-namespace-1.mm b/gcc/testsuite/obj-c++.dg/method-namespace-1.mm new file mode 100644 index 0000000..6095f57 --- /dev/null +++ b/gcc/testsuite/obj-c++.dg/method-namespace-1.mm @@ -0,0 +1,29 @@ +/* Test for usage of namespace inside @implementation. */ +/* { dg-do compile } */ +@interface MyDocument +@end + +@implementation MyDocument + +// This deprecated usage works +static void foo1() { } + +// This preferred usage does _not_ work +namespace + { + void foo2() { } + } + +namespace STD + { + void foo3 () {} + } + +using namespace STD; + +- (void) GARF { + foo2(); + foo3(); +} + +@end |