[petsc-dev] Master broken after changes to PetscSection headers

Václav Hapla vaclav.hapla at erdw.ethz.ch
Thu Sep 19 05:42:07 CDT 2019



19. září 2019 12:23:43 SELČ, Matthew Knepley <knepley at gmail.com> napsal:
>On Thu, Sep 19, 2019 at 6:21 AM Matthew Knepley <knepley at gmail.com>
>wrote:
>
>> On Thu, Sep 19, 2019 at 6:20 AM Stefano Zampini
><stefano.zampini at gmail.com>
>> wrote:
>>
>>> So why it is in the vec package?
>>>
>>
>> Its in IS, so if anything it should go in petscis.h. I will move it
>there.
>>
>
>Now that we are doing this. I think petscsf.h belongs there too, not
>just
>the types.

The is directory just groups different utility classes dealing with integer mappings. Probably just from historical reasons. I don't think they should be considered belonging to the IS package. I don't see a point in including it all in petscis.h. Why e.g. users of KSP should implicitly include all this stuff when they don't need it.

Related issue
https://gitlab.com/petsc/petsc/issues/290

Vaclav

>
>   Matt
>
>
>>    Matt
>>
>>
>>> Il Gio 19 Set 2019, 13:17 Matthew Knepley <knepley at gmail.com> ha
>scritto:
>>>
>>>> I made a new MR. DMLabel uses Section, whereas nothing else in Vec
>does.
>>>>
>>>>    Matt
>>>>
>>>> On Thu, Sep 19, 2019 at 6:03 AM Stefano Zampini <
>>>> stefano.zampini at gmail.com> wrote:
>>>>
>>>>> Petscsection is part of the vec package. It belongs to petscvec.h
>>>>>
>>>>> Il Gio 19 Set 2019, 12:50 Hapla Vaclav <vaclav.hapla at erdw.ethz.ch>
>ha
>>>>> scritto:
>>>>>
>>>>>>
>>>>>>
>>>>>> On 19 Sep 2019, at 11:25, Matthew Knepley via petsc-dev <
>>>>>> petsc-dev at mcs.anl.gov> wrote:
>>>>>>
>>>>>> I pushed the fix to the branch. Can we remerge it?
>>>>>>
>>>>>>
>>>>>> I think best way would be to create another MR.
>>>>>>
>>>>>> You should also add
>>>>>>   #include <petscsection.h>
>>>>>> to petscdmlabel.h.
>>>>>> This which will also satisfy Lisandro's point.
>>>>>>
>>>>>> Vaclav
>>>>>>
>>>>>>
>>>>>> Also, I do not understand why tests did not catch this. Its
>obvious
>>>>>> what happened. I added that header
>>>>>> to convert.c instead of convest.c.
>>>>>>
>>>>>>    Matt
>>>>>>
>>>>>> On Thu, Sep 19, 2019 at 5:19 AM Stefano Zampini via petsc-dev <
>>>>>> petsc-dev at mcs.anl.gov> wrote:
>>>>>>
>>>>>>> How come this was not caught by the tests? I think we have tests
>with
>>>>>>> -Werror
>>>>>>>
>>>>>>> Il Gio 19 Set 2019, 12:15 Lisandro Dalcin via petsc-dev <
>>>>>>> petsc-dev at mcs.anl.gov> ha scritto:
>>>>>>>
>>>>>>>> The warnings below are from a C build. A C++ build fails right
>away.
>>>>>>>>
>>>>>>>> We need to `#include <petscsection.h>` somewhere in the public
>>>>>>>> headers, at least such that  `#include <petsc.h>` in user code
>works.
>>>>>>>>
>>>>>>>> $ git grep petscsection include/
>>>>>>>> include/petsc/private/sectionimpl.h:#include <petscsection.h>
>>>>>>>> include/petscis.h:#include <petscsectiontypes.h>
>>>>>>>> include/petscsection.h:#include <petscsectiontypes.h>
>>>>>>>>
>>>>>>>>
>>>>>>>> /home/devel/petsc/dev/src/snes/utils/convest.c: In function
>>>>>>>> ‘PetscConvEstGetConvRate’:
>>>>>>>> /home/devel/petsc/dev/src/snes/utils/convest.c:293:14: warning:
>>>>>>>> implicit declaration of function ‘PetscSectionGetField’; did
>you mean
>>>>>>>> ‘PetscSectionVecView’? [-Wimplicit-function-declaration]
>>>>>>>>   293 |       ierr = PetscSectionGetField(s, f,
>&fs);CHKERRQ(ierr);
>>>>>>>>       |              ^~~~~~~~~~~~~~~~~~~~
>>>>>>>>       |              PetscSectionVecView
>>>>>>>> /home/devel/petsc/dev/src/snes/utils/convest.c:294:14: warning:
>>>>>>>> implicit declaration of function
>‘PetscSectionGetConstrainedStorageSize’
>>>>>>>> [-Wimplicit-function-declaration]
>>>>>>>>   294 |       ierr = PetscSectionGetConstrainedStorageSize(fs,
>>>>>>>> &lsize);CHKERRQ(ierr);
>>>>>>>>       |              ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
>>>>>>>>
>>>>>>>> --
>>>>>>>> Lisandro Dalcin
>>>>>>>> ============
>>>>>>>> Research Scientist
>>>>>>>> Extreme Computing Research Center (ECRC)
>>>>>>>> King Abdullah University of Science and Technology (KAUST)
>>>>>>>> http://ecrc.kaust.edu.sa/
>>>>>>>>
>>>>>>>
>>>>>>
>>>>>> --
>>>>>> 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/>
>>>>
>>>
>>
>> --
>> 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/>
>>


More information about the petsc-dev mailing list