[petsc-dev] Problem with the reorganization of complex with clang
Satish Balay
balay at mcs.anl.gov
Thu May 13 17:23:09 CDT 2021
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
> >
> >
>
>
More information about the petsc-dev
mailing list