<html>
<head>
<style><!--
.hmmessage P
{
margin:0px;
padding:0px
}
body.hmmessage
{
font-size: 10pt;
font-family:Verdana
}
--></style>
</head>
<body class='hmmessage'>
1) All platforms should accept, but silently ignore, the NT386/I386_CYGWIN/etc. calling conventions:<BR>
at least __stdcall, and __cdecl<BR>
Probably all the synonyms: C, WINAPI, CALLBACK, WINAPIV, APIENTRY, APIPRIVATE, PASCAL,<BR>
<BR>
This is a very small change.<BR>
<BR>
<BR>
This is will allow:<BR>
a) possibly merging the two nearly identical OpenGL.i3 files<BR>
b) implementing functions in Modula-3 that are portable, but use __stdcall, possibly for perf<BR>
I intend to that for hand.c's replacement, soon.<BR>
<BR>
<BR>
Maybe experiment as to the perf.<BR>
__stdcall is supposed to be faster, because the code is smaller.<BR>
But __cdecl might be able to compete by using stores to the stack instead of pushes?<BR>
I'd have to see how that compares in size, and it does increase stack usage some.<BR>
<BR>
<BR>
Probably not worth large scale experimenting/changing, but maybe nice to mark<BR>
new functions/interfaces as __stdcall (see next point).<BR>
<BR>
<BR>
I was actually thinking of trying flat out changing the default, but I think that is too difficult,<BR>
what with all the C<=>Modula-3 transitions. And not worth it given other<BR>
more valuable work to do.<BR>
<BR>
<BR>
2) The calling convention pragmas should be allowed on an interface, to set<BR>
the default for an interface.<BR>
<BR>
2b) and I guess as well on a module, for unexported functions<BR>
<BR>
I assert that other than __stdcall and __cdecl on NT386, nothing else is<BR>
particularly interesting here. There is __fastcall, maybe interesting.<BR>
It has different meanings to different compilers.<BR>
I'd rather keep this all fairly constrained.<BR>
<BR>
No other platform has more than one calling convention, so this doesn't<BR>
have be to further generalized. Besides, as long as no platform uses<BR>
the same name to mean multiple things, ok.<BR>
Mac68K Classic?<BR>
Mac68K CFM? <BR>
Win16?<BR>
MS-DOS?<BR>
<BR>
<BR>
(I did recently acquire a working Mac68K, as well it is easily<BR>
run on a modern PPC Mac; far down the list, but...)<BR>
<BR>
<BR>
- Jay<BR> </body>
</html>