OSDN Git Service

2007-03-28 Douglas Gregor <doug.gregor@gmail.com>
authordgregor <dgregor@138bc75d-0d04-0410-961f-82ee72b054a4>
Wed, 28 Mar 2007 14:14:33 +0000 (14:14 +0000)
committerdgregor <dgregor@138bc75d-0d04-0410-961f-82ee72b054a4>
Wed, 28 Mar 2007 14:14:33 +0000 (14:14 +0000)
commit564714940bf7b0069ab29c651cb482c16d8d49eb
treea16779ee40a6eeacded6ce16a5b7e6aa3bc6ea09
parent58c9a0869f037dc34210471e52c03bf3e06caf77
2007-03-28 Douglas Gregor <doug.gregor@gmail.com>

* parser.c (struct cp_parser): Update comment for
greater_than_is_operator_p.
(cp_parser_primary_expression): In C++0x mode, a cast operator can
be terminated with a `>>' token when !GREATER_THAN_IS_OPERATOR_P.
(TOKEN_PRECEDENCE): In C++0x mode, `>>' is treated like `>' when
!GREATER_THAN_IS_OPERATOR_P.
(cp_parser_binary_expression): When -Wc++0x-compat, warn about
`>>' operators that will become two `>' tokens in C++0x.
(cp_parser_parameter_declaration): Treat `>>' like `>' in C++0x
mode, allowing it to terminate default arguments.
(cp_parser_enclosed_template_argument_list): In C++0x mode, treat
`>>' like two consecutive `>' tokens.
(cp_parser_skip_to_end_of_template_parameter_list): Ditto.
(cp_parser_next_token_ends_template_argument_p): In C++0x, `>>'
ends a template argument.

2007-03-28 Douglas Gregor <doug.gregor@gmail.com>

* g++.dg/cpp0x/bracket1.C: New.
* g++.dg/cpp0x/bracket2.C: New.
* g++.dg/cpp0x/bracket3.C: New.
* g++.dg/cpp0x/bracket4.C: New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@123302 138bc75d-0d04-0410-961f-82ee72b054a4
gcc/cp/ChangeLog
gcc/cp/parser.c
gcc/testsuite/ChangeLog
gcc/testsuite/g++.dg/cpp0x/bracket1.C [new file with mode: 0644]
gcc/testsuite/g++.dg/cpp0x/bracket2.C [new file with mode: 0644]
gcc/testsuite/g++.dg/cpp0x/bracket3.C [new file with mode: 0644]
gcc/testsuite/g++.dg/cpp0x/bracket4.C [new file with mode: 0644]