[Bug middle-end/27337] OpenMP ICE in expand_expr_real_1 at expr.c:6814
jakub at gcc dot gnu dot org
gcc-bugzilla@gcc.gnu.org
Tue May 2 10:45:00 GMT 2006
------- Comment #4 from jakub at gcc dot gnu dot org 2006-05-02 10:45 -------
Subject: Bug 27337
Author: jakub
Date: Tue May 2 10:44:55 2006
New Revision: 113456
URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=113456
Log:
PR middle-end/27337
* gimplify.c (gimplify_scan_omp_clauses): Handle INDIRECT_REF
around RESULT_DECL for result passed by reference.
(gimplify_expr): Call omp_notice_variable when RESULT_DECL is seen.
* omp-low.c (use_pointer_for_field): Don't look at
DECL_HAS_VALUE_EXPR_P for RESULT_DECLs.
(scan_omp_1): Call remap_decl on RESULT_DECLs.
(lower_rec_input_clauses): Don't allocate VLA memory for the second
time or var for passing by reference for
OMP_CLAUSE_LASTPRIVATE_FIRSTPRIVATE clauses. Allow creation of
TREE_ADDRESSABLE variables when passing by reference.
* omp-low.c (dump_omp_region): Fix output formatting.
cp/
* cp-gimplify.c (cxx_omp_privatize_by_reference): New function.
* cp-tree.h (cxx_omp_privatize_by_reference): New prototype.
* cp-objcp-common.h (LANG_HOOKS_OMP_PRIVATIZE_BY_REFERENCE): Define.
testsuite/
* g++.dg/gomp/pr27337-1.C: New test.
* g++.dg/gomp/pr27337-2.C: New test.
libgomp/
* testsuite/libgomp.c++/pr27337.C: New test.
Added:
trunk/gcc/testsuite/g++.dg/gomp/pr27337-1.C
trunk/gcc/testsuite/g++.dg/gomp/pr27337-2.C
trunk/libgomp/testsuite/libgomp.c++/pr27337.C
Modified:
trunk/gcc/ChangeLog
trunk/gcc/cp/ChangeLog
trunk/gcc/cp/cp-gimplify.c
trunk/gcc/cp/cp-objcp-common.h
trunk/gcc/cp/cp-tree.h
trunk/gcc/gimplify.c
trunk/gcc/omp-low.c
trunk/gcc/testsuite/ChangeLog
trunk/libgomp/ChangeLog
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=27337
More information about the Gcc-bugs
mailing list