Hi Davide, Hazen,

yes, g77 is complaining because of the "implicit none" statements.
I have now added "external floor" and "real*8 floor", so the error
messages are gone.

The second (warning) message is about calling plslabelfunc with a
literal 0, rather than a procedure name. gfortran ignores this,
but g77 gives a warning. I am not sure how to proceed here - I
will look into it later on.

Regards,

Arjen

On 2009-11-12 08:58, Davide Cesari wrote:
> Hi,
> since floor is declared as function, you need something like
> 
> times = floor()
> 
> times = call floor() is definitely wrong; maybe, if you have declared 
> "implicit none", you need to declare floor as real at the beginning of 
> the program unit, something like:
> 
> real floor
> 
>       Davide
> 
> Hazen Babcock ha scritto:
>> Hi Arjen,
>>
>> Thanks for working on this. Unfortunately I'm still getting the error 
>> about the floor function. I thought perhaps I needed to add something 
>> like "external floor" in the normalize_longitude function but that only 
>> gave me a different error. "times = call floor (..)" also does not seem 
>> to work. Adding a "return" statement to the floor procedure similarly 
>> failed. I assume that is must somehow be possible to call functions in 
>> fortran but I'm quite puzzled about how one actually goes about it.
>>
>> I also get what appears to be a warning about the call to 
>> plslabelfunc(). "Argument #1 of 'plslabelfunc' is passed by reference at 
>> (2) but is a procedure at (1)".
>>
>> thanks,
>> -Hazen
>>
>> Arjen Markus wrote:
>>> Hi Hazen,
>>>
>>> just now I started to include the changes for x19f.f, when I realised
>>> that the label argument poses a bit of a problem: Fortran expects a
>>> hidden argument to hold the actual string length. For the other
>>> interfaces we can circumvent that issue and in the F95 interface
>>> this is solved by using "length" explicitly.
>>>
>>> Well, the changes should work, unfortunately I do not have access
>>> right now to a proper build environment to really test it. Please
>>> let me know if there is any trouble.
>>>
>>> Regards,
>>>
>>> Arjen
>>>
>>> On 2009-11-07 23:05, Hazen Babcock wrote:
>>>> Hi Arjen,
>>>>
>>>> Since I just ran into exactly this problem myself (with mingw on 
>>>> windows)... Should we fix example x19f.f to work with f77? It is in 
>>>> the f77 examples folder so I think it is reasonable for the user to 
>>>> assume that it should be possible to compile this example with a f77 
>>>> compiler.
>>>>
>>>> best,
>>>> -Hazen
>>>>
>>>> Arjen Markus wrote:
>>>>> Hi Werner,
>>>>>
>>>>> the floor function does not exist in FORTRAN 77, so you need
>>>>> to implement it, for instance:
>>>>>
>>>>> *234567
>>>>>        REAL FUNCTION FLOOR(X)
>>>>>        REAL X
>>>>>        FLOOR = FLOAT(INT(X))
>>>>>        RETURN
>>>>>        END
>>>>>
>>>>> The declaration "character*(length) label" is a Fortran 90
>>>>> facility. Use:
>>>>>
>>>>>        character*(*) label
>>>>>
>>>>> This should actually be handled by the C interface (the
>>>>> string length is passed as a hidden argument ...) I do not
>>>>> have time the coming days to look into it closely, but I
>>>>> will try.
>>>>>
>>>>> You can not pass a null pointer (0) in FORTRAN 77. To turn the
>>>>> labeller off, I am afraid you will have to use either a separate
>>>>> routine (call plslabelfuncoff) or use a dummy routine.
>>>>>
>>>>> Regards,
>>>>>
>>>>> Arjen
>>>>>
>>>>> On 2009-09-15 13:47, Werner Smekal wrote:
>>>>>> Hi,
>>>>>>
>>>>>> when I compile the latest revision of PLplot with MinGW 3.4.5  
>>>>>> including the g77 compiler I get the following compiler error:
>>>>>>
>>>>>> Scanning dependencies of target x19f
>>>>>> [ 88%] Building Fortran object examples/f77/CMakeFiles/x19f.dir/ 
>>>>>> x19f.f.obj
>>>>>> E:\plbuild\examples\f77\x19f.f: In function `normalize_longitude':
>>>>>> E:\plbuild\examples\f77\x19f.f:80: warning:
>>>>>>              times = floor ((abs(lon) + 180.0d0) / 360.0d0)
>>>>>>                      ^
>>>>>> Reference to unimplemented intrinsic `FLOOR' at (^) (assumed EXTERNAL)
>>>>>> E:\plbuild\examples\f77\x19f.f:80:
>>>>>>              times = floor ((abs(lon) + 180.0d0) / 360.0d0)
>>>>>>                      ^
>>>>>> Invalid declaration of or reference to symbol `floor' at (^)  
>>>>>> [initially seen at (^)]
>>>>>> E:\plbuild\examples\f77\x19f.f: In subroutine `geolocation_labeler':
>>>>>> E:\plbuild\examples\f77\x19f.f:91:
>>>>>>           subroutine geolocation_labeler(axis, value, label, length)
>>>>>>                                                              1
>>>>>> E:\plbuild\examples\f77\x19f.f:95: (continued):
>>>>>>           character*(length) label
>>>>>>                      2
>>>>>> Invalid declaration of or reference to symbol `length' at (2)  
>>>>>> [initially seen at (1)]
>>>>>> E:\plbuild\examples\f77\x19f.f: In program `x19f':
>>>>>> E:\plbuild\examples\f77\x19f.f:161: warning:
>>>>>>           call plslabelfunc(geolocation_labeler)
>>>>>>                1
>>>>>> E:\plbuild\examples\f77\x19f.f:177: (continued):
>>>>>>           call plslabelfunc(0)
>>>>>>                2
>>>>>> Argument #1 of `plslabelfunc' is passed by reference at (2) but is 
>>>>>> a  procedure at (1) [info -f g77 M GLOBALS]
>>>>>> mingw32-make[2]: *** [examples/f77/CMakeFiles/x19f.dir/x19f.f.obj]  
>>>>>> Error 1
>>>>>> mingw32-make[1]: *** [examples/f77/CMakeFiles/x19f.dir/all] Error 2
>>>>>> mingw32-make: *** [all] Error 2
>>>>>>
>>>>>> Maybe someone who is more knowledgeable about Fortran can help me 
>>>>>> out  make this example work.
>>>>>>
>>>>>> Thanks,
>>>>>> Werner
>>>>>>
>>>>>> -- 
>>>>>> Dr. Werner Smekal
>>>>>> Institut fuer Allgemeine Physik
>>>>>> Technische Universitaet Wien
>>>>>> Wiedner Hauptstr 8-10
>>>>>> A-1040 Wien
>>>>>> Austria
>>>>>> DVR-Nr: 0005886
>>>>>>
>>>>>> email: sme...@iap.tuwien.ac.at
>>>>>> web:   http://www.iap.tuwien.ac.at/~smekal
>>>>>> phone: +43-(0)1-58801-13463 (office)
>>>>>>         +43-(0)1-58801-13469 (laboratory)
>>>>>> fax:   +43-(0)1-58801-13499
>>>>>>
>>>>>>
>>>>>> ------------------------------------------------------------------------------
>>>>>>  
>>>>>>
>>>>>> Come build with us! The BlackBerry® Developer Conference in SF, CA
>>>>>> is the only developer event you need to attend this year. Jumpstart 
>>>>>> your
>>>>>> developing skills, take BlackBerry mobile applications to market and 
>>>>>> stay ahead of the curve. Join us from November 9-12, 2009. 
>>>>>> Register now!
>>>>>> http://p.sf.net/sfu/devconf
>>>>>> _______________________________________________
>>>>>> Plplot-devel mailing list
>>>>>> Plplot-devel@lists.sourceforge.net
>>>>>> https://lists.sourceforge.net/lists/listinfo/plplot-devel
>>>>>>
>>>>> ------------------------------------------------------------------------------
>>>>>  
>>>>>
>>>>> Come build with us! The BlackBerry® Developer Conference in SF, CA
>>>>> is the only developer event you need to attend this year. Jumpstart your
>>>>> developing skills, take BlackBerry mobile applications to market and 
>>>>> stay ahead of the curve. Join us from November 9-12, 2009. 
>>>>> Register now!
>>>>> http://p.sf.net/sfu/devconf
>>>>> _______________________________________________
>>>>> Plplot-devel mailing list
>>>>> Plplot-devel@lists.sourceforge.net
>>>>> https://lists.sourceforge.net/lists/listinfo/plplot-devel
>>>>>
>>
>> ------------------------------------------------------------------------------
>> Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day 
>> trial. Simplify your report design, integration and deployment - and focus 
>> on 
>> what you do best, core application coding. Discover what's new with
>> Crystal Reports now.  http://p.sf.net/sfu/bobj-july
>> _______________________________________________
>> Plplot-devel mailing list
>> Plplot-devel@lists.sourceforge.net
>> https://lists.sourceforge.net/lists/listinfo/plplot-devel
>>
> 
> 

------------------------------------------------------------------------------
Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day 
trial. Simplify your report design, integration and deployment - and focus on 
what you do best, core application coding. Discover what's new with
Crystal Reports now.  http://p.sf.net/sfu/bobj-july
_______________________________________________
Plplot-devel mailing list
Plplot-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/plplot-devel

Reply via email to