I get the following error when compiling using gcc snapshot 4.4.0 20080704 main.c|18|internal compiler error: in pop_gimplify_context, at gimplify.c:194
See code at the end of the post and gcc configure options. Obviously when removing the -fopenmp switch the ICE go away. Also removing either the omp task or omp single directive make the error go away. The ICE also vanish if the expression inside the while loop is a constant. This error appear at all optimization level with or without debugging enabled. using the following code (reduced case...) : int main() { int i = 0; #pragma omp parallel { #pragma omp single while( i < 1 ) { #pragma omp task i++; } } return 0; } gcc configure options : $ gcc -v Using built-in specs. Target: mingw32 Configured with: ./gcc-4.4.0/configure --prefix=/mingw --enable-bootstrap --build=mingw32 --program-prefix= --with-as=/mingw/bin/as.exe --with-ld=/mingw/bin/ld.exe --with-gcc --with-gnu-ld --with-gnu-as --enable-languages=c,c++,objc,fortran --disable-nls --disable-win32-registry --disable-werror --enable-sjlj-exceptions --enable-threads=win32 --disable-symvers --disable-libstdcxx-pch --enable-version-specific-runtime-libs --enable-cxx-flags='-fno-function-sections -fno-data-sections' --enable-fully-dynamic-string --enable-libgomp --enable-checking=release Thread model: win32 gcc version 4.4.0 20080704 (experimental) (GCC) -- Summary: pop_gimplify_context ICE using openmp task construct Product: gcc Version: 4.4.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: middle-end AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: BlanchardJ at ieee dot org GCC build triplet: i686-pc-mingw http://gcc.gnu.org/bugzilla/show_bug.cgi?id=36802