On Fri, Jun 26, 2015 at 12:38:48PM +0200, Eric Botcazou wrote: > this is a regression present on the mainline and 5 branch. For the attached > Fortran testcase, the GIMPLE verifier stops the compiler on an error mark > inserted by omp-low.c:omp_copy_decl for a FRAME variable created during the > nested function lowering pass because it is not marked as shared since it is > created too late (it is created at the end of the pass when optimization is > disabled after the change for PR debug/53927). > > Fixed by teaching convert_local_omp_clauses about this case, tested on x86_64- > suse-linux, OK for the mainline and 5 branch?
Don't you need to handle convert_nonlocal_omp_clauses similarly (need_chain in that case)? At least looking at your r211308 commit, for !optimize you force not just the frame, but also chain. > 2015-06-26 Eric Botcazou <ebotca...@adacore.com> > > * gfortran.dg/pr66633.f90: New test. The test should go into gfortran.dg/gomp/, without the ! { dg-require-effective-target fopenmp } line. Thanks for working on this. Jakub