[petsc-dev] Problem with the reorganization of complex with clang
Junchao Zhang
junchao.zhang at gmail.com
Fri May 14 10:28:05 CDT 2021
Satish, how to access this machine? I want to know why complex is screwed
up.
--Junchao Zhang
On Thu, May 13, 2021 at 7:08 PM Matthew Knepley <knepley at gmail.com> wrote:
> Nope. I will use your fix.
>
> Thanks,
>
> Matt
>
> On Thu, May 13, 2021 at 7:55 PM Matthew Knepley <knepley at gmail.com> wrote:
>
>> I am going to try just including petscsys.h and see if it works.
>>
>> Thanks,
>>
>> Matt
>>
>> On Thu, May 13, 2021 at 6:23 PM Satish Balay <balay at mcs.anl.gov> wrote:
>>
>>> 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
>>> > >
>>> > >
>>> >
>>> >
>>>
>>>
>>
>> --
>> What most experimenters take for granted before they begin their
>> experiments is infinitely more interesting than any results to which their
>> experiments lead.
>> -- Norbert Wiener
>>
>> https://www.cse.buffalo.edu/~knepley/
>> <http://www.cse.buffalo.edu/~knepley/>
>>
>
>
> --
> What most experimenters take for granted before they begin their
> experiments is infinitely more interesting than any results to which their
> experiments lead.
> -- Norbert Wiener
>
> https://www.cse.buffalo.edu/~knepley/
> <http://www.cse.buffalo.edu/~knepley/>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.mcs.anl.gov/pipermail/petsc-dev/attachments/20210514/ab474825/attachment.html>
More information about the petsc-dev
mailing list