r196816 - in /branches/gomp-4_0-branch: gcc/c/C...

jakub@gcc.gnu.org jakub@gcc.gnu.org
Wed Mar 20 09:43:00 GMT 2013


Author: jakub
Date: Wed Mar 20 09:43:19 2013
New Revision: 196816

URL: http://gcc.gnu.org/viewcvs?rev=196816&root=gcc&view=rev
Log:
	* c-parser.c (c_parser_expr_no_commas): Add omp_atomic_lhs argument
	with default value, pass it down to c_parser_conditional_expression.
	(c_parser_conditional_expression): Add omp_atomic_lhs argument, pass
	it down to c_parser_binary_expression.  Don't pass PREC_NONE to
	it.  Adjust recursive call.
	(c_parser_binary_expression): Remove prec argument, add omp_atomic_lhs
	argument.  Always start from PREC_NONE, if omp_atomic_lhs is non-NULL
	and one of the arguments of toplevel binop matches it, use build2
	instead of parser_build_binary_op.
	(c_parser_omp_atomic): Handle OpenMP 4.0 atomics.
	(c_parser_omp_for_loop): Adjust c_parser_binary_expression caller.
	* c-tree.h (c_tree_equal): New prototype.
	* c-typeck.c (c_tree_equal): New function.

	* parser.c (cp_parser_omp_atomic): Never restart unless
	structured_block is true.

	* c-c++-common/gomp/atomic-15.c: Adjust for C diagnostics.

	* testsuite/libgomp.c/atomic-14.c: Add parens to make it valid.
	* testsuite/libgomp.c/atomic-15.c: New test.
	* testsuite/libgomp.c/atomic-16.c: New test.

Added:
    branches/gomp-4_0-branch/libgomp/testsuite/libgomp.c/atomic-15.c
    branches/gomp-4_0-branch/libgomp/testsuite/libgomp.c/atomic-16.c
Modified:
    branches/gomp-4_0-branch/gcc/c/ChangeLog.gomp
    branches/gomp-4_0-branch/gcc/c/c-parser.c
    branches/gomp-4_0-branch/gcc/c/c-tree.h
    branches/gomp-4_0-branch/gcc/c/c-typeck.c
    branches/gomp-4_0-branch/gcc/cp/ChangeLog.gomp
    branches/gomp-4_0-branch/gcc/cp/parser.c
    branches/gomp-4_0-branch/gcc/testsuite/ChangeLog.gomp
    branches/gomp-4_0-branch/gcc/testsuite/c-c++-common/gomp/atomic-15.c
    branches/gomp-4_0-branch/libgomp/ChangeLog.gomp
    branches/gomp-4_0-branch/libgomp/testsuite/libgomp.c/atomic-14.c



More information about the Gcc-cvs mailing list