Re: Issue from IVF 9.0 to IVF 10.1



Marco Ppower wrote:
| "Jugoslav Dujic" ha scritto nel messaggio...
|| You seem to have non-default calling convention active
|| (Project properties/Fortran/External procedures). I guess it's "CVF", i.e.
|| a leftover from CVF days. That's perfectly OK, and it helped catch the
|| error
|| (@52 stands for 13 arguments * 4-byte address each). I don't know how it
|| got activated in your upgrade from 9.0 and 10.1 though?
|
| Well, such non-default calling convention was activated still in the v9.0
| project, because it seemed to be the only way to be able to call those
| functions from Visual Basic 6 code. And that configuration parameter was
| kept from v9.0 to v10.1. Do you know if the default calling convention in
| v10.1 is working well with Visual Basic code? I didn't try at all, because I
| got IVF v10.1 just yesterday, so I had no time to make tests.

If you interface with Visual Basic, you do need to use stdcall convention (CVF).
Like I said, it's perfectly fine. What I still don't get is how the error
suddenly popped up in 10.1, but not in 9.0? While 9.0 had its share of bugs,
I don't see how it could possibly ever passed the linking stage, unless
something
in the code changed in the meantime.

|| IVF default convention (cdecl) does not encode routine names in this way.
|| However, IVF provides far more powerful cross-interface checking across
|| all source files by means of /gen-interface /check-interface switches.
|| That's under Diagnostics\"Generate interface blocks" and "Check Routine
|| Interfaces" in the IDE project settings.
|
| May I use these features even with a non-default calling convention?

Yes (supposedly).

Roughly, the option /gen-interface works by "adding" module...end module around
the
source files in the background. /check-interface works by "adding" USE
statements
within calling routines, and then the normal interface checking rules apply. It
should be all on "source" or "preprocessor" level, i.e. be independent of the
calling convention. Steve can probably add more details.

--
Jugoslav
___________
www.xeffort.com

Please reply to the newsgroup.
You can find my real e-mail on my home page above.

.


Quantcast