[petsc-dev] What needs to be done before a release?

Barry Smith bsmith at mcs.anl.gov
Fri Jun 1 18:35:31 CDT 2012


On Jun 1, 2012, at 1:34 PM, Blaise Bourdin wrote:

> 
> On Jun 1, 2012, at 12:47 PM, Barry Smith wrote:
> 
>> 
>> On Jun 1, 2012, at 12:37 PM, Blaise Bourdin wrote:
>>> 
>>> What compiler is this? I don't have access to any solaris box, and have pretty bad memories of sun's fortran compilers. My understanding of the C interoperability is that these are perfectly legal look at the example at http://fortranwiki.org/fortran/show/c_loc
>>> 
>>> I pushed a change to bagenum.F Could you have a look and see if you get the same error in PetscBagRegisterEnum? 
>>> 
>>> Also, this binding needs an explicit interface (technically, the old one too, but Barry's trick for getting farray length was a workaround the lack of explicit interface).
>> 
>>  Huh, what? We don't want to require an explicit interface! Where is this change? What is the url of the change you made? Did you put it in petsc-dev or petsc-3.3?  Why do you need to change it to require an explicit interface.
>> 
>>  Be like Jed and when you say you made some change include the url business so people can jump immediately to the change you are talking about instead of wasting 1/2 and hour trying to find something they cannot find.
> 
> Apologies, will do next time. That would also have helped me realize that I had pushed to my own clone, not petsc-3.3 or petsc-dev repository... I am attaching the patch I was planing on submitting. 
> 
> Out of curiosity, what is the rationale for not wanting an explicit interface? As far as I understand, the fortran standard mandates an explicit interface in this situation (array of strings).

     I'm confused. F77 supported passing an array of strings but doesn't even have the concept of an explicit interface so how can flater require an explicit interface for the exact same call?

     Is it because you want to use size(FArray) instead of looking for the '' string?

> I would understand in the situation of pure f77 compatibility for instance, but we threw this away with the iso_c_binding module anyway...

    I want the user experience to be as close to f77 (what they are used to) as possible and not introduced unnecessary flater crap.

   Barry




     
    
> 
> Perhaps introducing f2003 in petsc was a bad idea, considering the large variety of compilers you need to support. If you feel that it introduces more issues than solving problems, feel free to strip the PetscOptionsEnum and PetscBagRegisterEnum bindings. They could easily be packaged separately for the few people who will ever need them.
> 
> <PetscBagRegisterEnum.patch>
> 
> Blaise
> 
> 
>> 
>>  Barry
>> 
>> 
>> 
>>> I can't figure out where to put it. so for the moment, it is in ex5f90
>>> 
>>> 
>>> Blaise
>>> 
>>> 
>>>> 
>>>> thanks,
>>>> Satish
>>>> 
>>>> 
>>>> On Thu, 31 May 2012, Satish Balay wrote:
>>>> 
>>>>> Barry is looking at using this flag and reorganizing the f2003 code.
>>>>> [perhaps the interface functions that need this functionality won't be
>>>>> compiled selectively - based on this flag]
>>>>> 
>>>>> Satish
>>>>> 
>>>>> On Thu, 31 May 2012, Jed Brown wrote:
>>>>> 
>>>>>> So how do we deal with this function not being implemented unless an F2003
>>>>>> compiler is used? Just #ifdef its body and produce a run-time error when an
>>>>>> old compiler is used? Satish, are you doing this?
>>>>>> 
>>>>>> On Thu, May 31, 2012 at 11:36 AM, Satish Balay <balay at mcs.anl.gov> wrote:
>>>>>> 
>>>>>>> Added configure check.
>>>>>>> 
>>>>>>> http://petsc.cs.iit.edu/petsc/releases/BuildSystem-3.3/rev/a6a959d40d3d
>>>>>>> 
>>>>>>> Satish
>>>>>>> 
>>>>>>> On Thu, 31 May 2012, Jed Brown wrote:
>>>>>>> 
>>>>>>>> And we have our first petsc-maint breakage due to this Fortran 2003
>>>>>>> thingy.
>>>>>>>> 
>>>>>>>> On Thu, May 31, 2012 at 9:03 AM, Satish Balay <balay at mcs.anl.gov> wrote:
>>>>>>>> 
>>>>>>>>> This code is using "use,intrinsic :: iso_c_binding"
>>>>>>>>> 
>>>>>>>>> Isn't this a fortran 2003 thingy? Perhaps there should be a configure
>>>>>>>>> checks for it.
>>>>>>>>> 
>>>>>>>>> Satish
>>>>>>>>> 
>>>>>>>>> On Wed, 30 May 2012, Barry Smith wrote:
>>>>>>>>> 
>>>>>>>>>> 
>>>>>>>>>> Blaise,
>>>>>>>>>> 
>>>>>>>>>> I have pushed PetscOptionsGetEnum() and PetscBagRegisterEnum()
>>>>>>> for
>>>>>>>>> f90 to petsc-dev tests are in src/sys/examples/tutorials
>>>>>>>>>> 
>>>>>>>>>> Barry
>>>>> 
>>>> 
>>> 
>>> -- 
>>> Department of Mathematics and Center for Computation & Technology
>>> Louisiana State University, Baton Rouge, LA 70803, USA
>>> Tel. +1 (225) 578 1612, Fax  +1 (225) 578 4276 http://www.math.lsu.edu/~bourdin
>>> 
>>> 
>>> 
>>> 
>>> 
>>> 
>>> 
>> 
> 
> -- 
> Department of Mathematics and Center for Computation & Technology
> Louisiana State University, Baton Rouge, LA 70803, USA
> Tel. +1 (225) 578 1612, Fax  +1 (225) 578 4276 http://www.math.lsu.edu/~bourdin
> 
> 
> 
> 
> 
> 
> 




More information about the petsc-dev mailing list