Re: [petsc-dev] Problem with the reorganization of complex with clang
This gets the build going... diff --git a/src/sys/dll/cxx/demangle.cxx b/src/sys/dll/cxx/demangle.cxx index 31810ea15f..793a97d285 100644 --- a/src/sys/dll/cxx/demangle.cxx +++ b/src/sys/dll/cxx/demangle.cxx @@ -1,3 +1,4 @@ +#define PETSC_SKIP_COMPLEX #include <petsc/private/petscimpl.h> #ifdef PETSC_HAVE_CXXABI_H Satish On Thu, 13 May 2021, Satish Balay wrote:
CXX arch-ci-linux-clang-avx/obj/sys/dll/cxx/demangle.o
It is built with a c++ compiler - so __cplusplus should be defined. [PETSC_HAVE_CXXABI is not defined]
Do you need to build this sourcefile file in a clanguage=C build?
I'm not sure if a c++/complex build is checked with this compiler.
[eventhough its clang build - I see the compiler is using system incldues aka from gcc-4.8.5 - so perhaps some things don't work?]
One option is to add the following to this sourcefile:
#define PETSC_SKIP_COMPLEX
Satish
On Thu, 13 May 2021, Matthew Knepley wrote:
In this CI run (linux-clang-avg):
https://gitlab.com/petsc/petsc/-/jobs/1260342204
The compile fails building a C++ file, demangle.cxx. It fails at the first line, including <petsc/private/petscimpl.h>, down in petscsystypes.h. It bombs during the definition of complex because it looks like the compiler is not defining __cplusplus, and thus takes the wrong branch. Is this what is happening? I cannot access this machine.
Thanks,
Matt
participants (1)
-
Satish Balay