This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug middle-end/32362] ICE: in lookup_decl_in_outer_ctx, at omp-low.c:1508
- From: "burnus at gcc dot gnu dot org" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: 16 Jun 2007 07:05:39 -0000
- Subject: [Bug middle-end/32362] ICE: in lookup_decl_in_outer_ctx, at omp-low.c:1508
- References: <bug-32362-14710@http.gcc.gnu.org/bugzilla/>
- Reply-to: gcc-bugzilla at gcc dot gnu dot org
------- Comment #1 from burnus at gcc dot gnu dot org 2007-06-16 07:05 -------
Work around for Fortran:
- integer :: i, tmp = 1, itmp = 0
+ integer :: i, tmp, itmp
+ tmp = 1; itmp = 0
Reduced C test case below. The problem is that itmp and tmp are static.
#include <omp.h>
int main()
{
int nthreads[4];
static int tmp, itmp;
omp_set_num_threads (4);
#pragma omp parallel private(itmp)
{
itmp = omp_get_thread_num ();
#pragma omp parallel firstprivate(tmp)
{
tmp = (omp_get_thread_num () + tmp) + 1;
}
}
}
--
burnus at gcc dot gnu dot org changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|UNCONFIRMED |NEW
Component|fortran |middle-end
Ever Confirmed|0 |1
GCC build triplet|x86_64-suse-linux |
GCC host triplet|x86_64-suse-linux |
GCC target triplet|x86_64-suse-linux |
Keywords| |ice-on-valid-code
Known to fail| |4.2.0 4.3.0
Last reconfirmed|0000-00-00 00:00:00 |2007-06-16 07:05:39
date| |
Summary|ICE - gfortran in |ICE: in
|lookup_decl_in_outer_ctx, at|lookup_decl_in_outer_ctx, at
|omp-low.c:1508 |omp-low.c:1508
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32362