Weirdness with clang and stdatomic.h on Rawhide
by Ron Olson
Hey all,
I’m troubleshooting an issue and came up with this sample program: https://pastebin.com/g9S8Z64q to demonstrate the problem. Basically, clang 13, on Rawhide, won’t compile that program, while on Fedora 35 it does.
The reason why is that on Rawhide, stdatomic.h exists under /usr/include/c++/12 while it does not exist on 35, so clang uses its built-in stdatomic per https://clang.llvm.org/docs/LanguageExtensions.html#c11-atomic-operations. If it uses its internal version, the sample program compiles fine.
Looking at stdatomic.h on Rawhide, I see it’s gated by “#if __cplusplus > 202002L”, so that means C++2b or later, not C++20. This seems to create a problem for clang which, since the file is present, wants to use it, but since it’s effectively empty due to the #ifdef, compiling of the sample program fails.
Is it possible to disable clang’s use of the header file as a flag? I’ve been unable to find anything like that, and obviously renaming the header is out of the question. Also, is it correct to the setting stdatomic.h to only be used by c++2b?
Thanks for any info,
Ron
2 years, 3 months
NativeJIT/function.h error with GCC12
by Antonio T. sagitter
Hi all.
I need help for following error due to the new GCC12:
make[2]: Leaving directory '/builddir/build/BUILD/COPASI-Build-251/build'
*** WARNING *** there are active plugins, do not report this as a bug
unless you can reproduce it without enabling any plugins.
Event | Plugins
PLUGIN_FINISH_UNIT | annobin: Generate final annotations
PLUGIN_START_UNIT | annobin: Generate global annotations
PLUGIN_ALL_PASSES_START | annobin: Generate per-function
annotations
PLUGIN_ALL_PASSES_END | annobin: Register per-function end
symbols
In file included from
/builddir/build/BUILD/COPASI-Build-251/copasi/math/CJitCompiler.h:15,
from
/builddir/build/BUILD/COPASI-Build-251/copasi/math/CMathContainer.h:35,
from
/builddir/build/BUILD/COPASI-Build-251/copasi/function/CEvaluationNodeOperator.cpp:35:
/usr/include/NativeJIT/Function.h: In constructor
'NativeJIT::Function<R, P1, P2, P3,
P4>::Function(Allocators::IAllocator&, NativeJIT::FunctionBuffer&)':
/usr/include/NativeJIT/Function.h:192:44: internal compiler error: in
cp_parser_template_id, at cp/parser.cc:18367
192 | m_p1 = &this->template Parameter<P1>(slotAllocator);
| ^
Please submit a full bug report, with preprocessed source (by using
-freport-bug).
Should be related to this GCC bug:
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=104235
Regards
--
---
Antonio Trande
Fedora Project
mailto: sagitter(a)fedoraproject.org
GPG key: 0xCC1CFEF30920C8AE
GPG key server: https://keyserver1.pgp.com/
2 years, 3 months
Why was node_exporter.service renamed to
prometheus-node-exporter.service?
by Barry Scott
I just had to fix a number of my servers that use node exporter.
The service name has been changed. Why was this done and did no one
think about the impact on users?
In the worst case I had a server fail to reboot because I had
Requires=node_exporter.service in the default target.
Barry
2 years, 3 months