Re: F2CL under LWW a few warnings
Raymond Toy <[email protected]> Wed, 11 Aug 2004 16:27:57 -0400
| Newsgroups | gmane.lisp.clocc.general |
|---|---|
| Message-ID | <[email protected]> |
>>>>> "Marco" == Marco Antoniotti <[email protected]> writes: Marco> I have a problem. Marco> Trying to set :declare-common t in all the files, I see that the Marco> definition of the common blocks (the DEFSTRUCTS) are different. Marco> Not all fields are generated all the time. Marco> If I try to selectively :declare-common t, then I get errors stating Marco> that this or that function is undefined. Marco> Any suggestion? Marco> Note that the instruction in the opkdmain.f file itself state that Marco> COMMON blocks should be treated specially, but mu Fortran is too weak Marco> to understand that comment. Yuck. You are now going to have to examine all declarations of common blocks and make sure they're all consistently named and find (or create) the one definition that includes all variables. Then you can :declare-common that particular definition and it should work for the rest. This is really a deficiency in f2cl that I've never bothered to fix because in most well-written Fortran code, common blocks are all declared consistently with the same variable names and length, although, I'm not sure that's a requirement. I also see in opkdmain.f, there are two declarations for the dlss01 common block. I don't know if that means to concatenate them or not, but f2cl definitely doesn't handle that. I'll have to read up on Fortran to see what that means. Sounds like you have a lot of fun ahead of you. :-( And all bets are off if the code does type-punning on the common blocks. Give up now, if so. Ray ------------------------------------------------------- SF.Net email is sponsored by Shop4tech.com-Lowest price on Blank Media 100pk Sonic DVD-R 4x for only $29 -100pk Sonic DVD+R for only $33 Save 50% off Retail on Ink & Toner - Free Shipping and Free Gift. http://www.shop4tech.com/z/Inkjet_Cartridges/9_108_r285