Looks like GCC 9 is finally enforcing an OpenMP change:
From https://gcc.gnu.org/ml/gcc-patches/2018-11/msg00628.html
- change data sharing for readonly variables without mutable members,
they are
no longer predetermined shared (this actually changed in earlier
OpenMP standard
releases, but was considered a mistake; for 5.0 it was decided it
isn't going to
be reverted; this makes a difference mainly when using default(none))
Which is now leading to some (expected) compilation failures:
BUILDSTDERR: nco_omp.c: In function 'nco_openmp_ini':
BUILDSTDERR: nco_omp.c:210:38: error: 'fp_stderr' not specified in
enclosing 'parallel'
BUILDSTDERR: 210 | if(nco_dbg_lvl_get() >= nco_dbg_fl)
(void)fprintf(fp_stderr,"%s: INFO Small parallel test region spawned
team of %d thread(s)\n",nco_prg_nm_get(),thr_nbr_act);
BUILDSTDERR: |
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
BUILDSTDERR: nco_omp.c:205:10: error: enclosing 'parallel'
BUILDSTDERR: 205 | # pragma omp parallel default(none) shared(thr_nbr_act)
BUILDSTDERR: | ^~~
The problem is that it's proving difficult to come up with a solution
that compiles under both GCC 9 and GCC 8.
GCC 8 complains about just adding fp_stderr to shared():
nco_omp.c: In function 'nco_openmp_ini':
nco_omp.c:205:43: error: 'fp_stderr' is predetermined 'shared' for 'shared'
# pragma omp parallel default(none) shared(fp_stderr,thr_nbr_act)
And apparently complains if you drop default(none) as well (from another
project with the same problem):
[ 9%] Building CXX object CMakeFiles/_CuraEngine.dir/src/layerPart.cpp.o
/home/ruben/Projects/CuraEngine/src/layerPart.cpp: In function ‘void
cura::createLayerParts(cura::SliceMeshStorage&, cura::Slicer*)’:
/home/ruben/Projects/CuraEngine/src/layerPart.cpp:52:78: error:
‘total_layers’ is predetermined ‘shared’ for ‘shared’
#pragma omp parallel for shared(mesh, slicer, total_layers)
schedule(dynamic)
https://github.com/nco/nco/issues/114
https://github.com/Ultimaker/CuraEngine/issues/984
Is there any hope of a common solution?
Thanks!
- Orion
--
Orion Poplawski
Manager of NWRA Technical Systems 720-772-5637
NWRA, Boulder/CoRA Office FAX: 303-415-9702
3380 Mitchell Lane orion@xxxxxxxx
Boulder, CO 80301 https://www.nwra.com/
_______________________________________________
devel mailing list -- devel@xxxxxxxxxxxxxxxxxxxxxxx
To unsubscribe send an email to devel-leave@xxxxxxxxxxxxxxxxxxxxxxx
Fedora Code of Conduct: https://getfedora.org/code-of-conduct.html
List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines
List Archives: https://lists.fedoraproject.org/archives/list/devel@xxxxxxxxxxxxxxxxxxxxxxx