<html>
<head>
<style><!--
.hmmessage P
{
margin:0px;
padding:0px
}
body.hmmessage
{
font-size: 12pt;
font-family:Calibri
}
--></style></head>
<body class='hmmessage'><div dir='ltr'>This is deliberate, and slightly useful, and the warnings shouldn't occur in the head,<br>for several years now. Please upgrade more frequently.<BR> <BR><br>In particular:<BR> <BR><br> - It is useful because "much" of the interfaces are describing types, <br> and types aren't just for function parameters, for functions that <br> aren't available, but they are used as part of files, and you can, <br> hypothetically, use them in your own functions (heck, you can<BR> write a Win32-on-Posix compatibility layer and provide the functions..). <BR> <BR><br> In particular, mklib uses these types and is fairly portable. <br> It might have endian/alignment problems though, esp. endian. <BR> <BR><br> I do have a plan to get rid of mklib though...i was slow to realize it<br> because mklib exports too much and I wanted a replacement wthout that flaw,<br> but just matching it is adequate. The frontend/backends shall output<br> the .def files instead of mklib. And then the usual lib/ar/link can/should<BR> make the libraries. If anyone wants to use LTCG on NT with the C backend,<BR> this is the way (or put everything in one source file via the backend, not a bad idea)..<BR> <BR><br> - In the past 20 years or so, there is only one widely used <br> platform that made the mistake of having multiple calling conventions <br> and that is NT/x86. Not NT in general, but NT/x86 specifically. <br> I expect nobody will make this mistake again. <br> I'm not sure MIPSo32/MIPSn32 or ARM-mess count as the same mistake. <br> On NT/x86, the calling convention does not bifurcate the entire target <br> and force building everything multiple times, because you can sprinkle it around and<br> each "type" can call each "type". This is good and bad. <br> The other OS/processor combinations with multiple calling conventions<br> define it as multiple ABIs with I believe no offical interop (except at the<br> kernel level, for some of them). <BR> <BR><br> Therefore, callling conventions can be safely ignored on all platforms except NT/x86. <br> Nobody will have any names to use here, overlapping the NT/x86 names or not. <br> If the day comes where I am wrong and some target has multiple conventions,<BR> we should change the pragma to accept multiple. If the names overlap with NT/x86,<BR> we would put platform qualifiers on them. Never again should we have the Win32 SQL.i3<BR> and Posix SQL.i3 that are the same, except for calling convention. What a waste -- almost<BR> the same, but for one little difference that could be handled another way, they go duplicated.<BR> That pattern bugs me.<BR> <BR><br> - Jay <br><br><br><br> <BR><div><hr id="stopSpelling">From: dragisha@m3w.org<br>Date: Fri, 22 Nov 2013 23:55:23 +0100<br>To: m3devel@elegosoft.com<br>Subject: Re: [M3devel] missed the memo? LINUXLIBC6 building WinBase?<br><br>Yes, it was in a memo. Sorry for disruption :).<br>
<br><div><div>On 22 Nov 2013, at 23:31, Dragiša Durić <<a href="mailto:dragisha@m3w.org">dragisha@m3w.org</a>> wrote:</div><br class="ecxApple-interchange-newline"><blockquote><div style="-ms-word-wrap: break-word;"><div style="color: rgb(245, 245, 245); font-family: Monaco; font-size: 13px; background-color: rgb(0, 0, 0);">+ ./scripts/do-pkg.sh buildship m3core libm3 tcp</div><div style="color: rgb(245, 245, 245); font-family: Monaco; font-size: 13px; background-color: rgb(0, 0, 0);">/root/rpmbuild/BUILD/cm3/scripts/pkgmap.sh -c cm3 -build -DROOT='/root/rpmbuild/BUILD/cm3' && cm3 -ship -DROOT='/root/rpmbuild/BUILD/cm3' m3core libm3 tc</div><div style="color: rgb(245, 245, 245); font-family: Monaco; font-size: 13px; background-color: rgb(0, 0, 0);">=== package m3-libs/m3core ===</div><div style="color: rgb(245, 245, 245); font-family: Monaco; font-size: 13px; background-color: rgb(0, 0, 0);"> +++ cm3 -build -DROOT='/root/rpmbuild/BUILD/cm3' $RARGS && cm3 -ship $RARGS -DROOT='/root/rpmbuild/BUILD/cm3' +++</div><div style="color: rgb(245, 245, 245); font-family: Monaco; font-size: 13px; background-color: rgb(0, 0, 0);">--- building in LINUXLIBC6 ---</div><div style="color: rgb(245, 245, 245); font-family: Monaco; font-size: 13px; min-height: 17px; background-color: rgb(0, 0, 0);"><br></div><div style="color: rgb(245, 245, 245); font-family: Monaco; font-size: 13px; background-color: rgb(0, 0, 0);">ignoring ../src/m3overrides</div><div style="color: rgb(245, 245, 245); font-family: Monaco; font-size: 13px; min-height: 17px; background-color: rgb(0, 0, 0);"><br></div><div style="color: rgb(245, 245, 245); font-family: Monaco; font-size: 13px; background-color: rgb(0, 0, 0);">new source -> compiling WinBase.i3</div><div style="color: rgb(245, 245, 245); font-family: Monaco; font-size: 13px; background-color: rgb(0, 0, 0);">"../src/win32/WinDef.i3", line 131: warning: unrecognized pragma (ignored) (WINAPI)</div><div style="color: rgb(245, 245, 245); font-family: Monaco; font-size: 13px; background-color: rgb(0, 0, 0);">"../src/win32/WinDef.i3", line 132: warning: unrecognized pragma (ignored) (WINAPI)</div><div style="color: rgb(245, 245, 245); font-family: Monaco; font-size: 13px; background-color: rgb(0, 0, 0);">"../src/win32/WinDef.i3", line 133: warning: unrecognized pragma (ignored) (WINAPI)</div><div style="color: rgb(245, 245, 245); font-family: Monaco; font-size: 13px; background-color: rgb(0, 0, 0);">"../src/win32/WinBase.i3", line 198: warning: unrecognized pragma (ignored) (WINAPI)</div><div style="color: rgb(245, 245, 245); font-family: Monaco; font-size: 13px; background-color: rgb(0, 0, 0);">"../src/win32/WinBase.i3", line 918: unsupported language or calling convention (WINAPI)</div><div style="color: rgb(245, 245, 245); font-family: Monaco; font-size: 13px; background-color: rgb(0, 0, 0);">"../src/win32/WinBase.i3", line 921: unsupported language or calling convention (WINAPI)</div><div style="color: rgb(245, 245, 245); font-family: Monaco; font-size: 13px; background-color: rgb(0, 0, 0);">"../src/win32/WinBase.i3", line 924: unsupported language or calling convention (WINAPI)</div><div style="color: rgb(245, 245, 245); font-family: Monaco; font-size: 13px; background-color: rgb(0, 0, 0);">"../src/win32/WinBase.i3", line 927: unsupported language or calling convention (WINAPI)</div><div style="color: rgb(245, 245, 245); font-family: Monaco; font-size: 13px; background-color: rgb(0, 0, 0);">"../src/win32/WinBase.i3", line 930: unsupported language or calling convention (WINAPI)</div><div style="color: rgb(245, 245, 245); font-family: Monaco; font-size: 13px; background-color: rgb(0, 0, 0);">"../src/win32/WinBase.i3", line 933: unsupported language or calling convention (WINAPI)</div><div style="color: rgb(245, 245, 245); font-family: Monaco; font-size: 13px; background-color: rgb(0, 0, 0);">"../src/win32/WinBase.i3", line 943: unsupported language or calling convention (WINAPI)</div><div style="color: rgb(245, 245, 245); font-family: Monaco; font-size: 13px; background-color: rgb(0, 0, 0);">"../src/win32/WinBase.i3", line 949: unsupported language or calling convention (WINAPI)</div><div style="color: rgb(245, 245, 245); font-family: Monaco; font-size: 13px; background-color: rgb(0, 0, 0);">"../src/win32/WinBase.i3", line 952: unsupported language or calling convention (WINAPI)</div><div style="color: rgb(245, 245, 245); font-family: Monaco; font-size: 13px; background-color: rgb(0, 0, 0);">"../src/win32/WinBase.i3", line 955: unsupported language or calling convention (WINAPI)</div><div><br></div><div>
<span class="ecxApple-style-span" style="font-family: Candara; border-collapse: separate; border-spacing: 0px;"><span class="ecxApple-style-span" style="text-transform: none; line-height: normal; text-indent: 0px; letter-spacing: normal; font-family: Helvetica; font-style: normal; font-variant: normal; font-weight: normal; word-spacing: 0px; white-space: normal; border-collapse: separate; border-spacing: 0px; orphans: 2; widows: 2;"><div style="-ms-word-wrap: break-word;"><span class="ecxApple-style-span" style="text-transform: none; line-height: normal; text-indent: 0px; letter-spacing: normal; font-family: Helvetica; font-style: normal; font-variant: normal; font-weight: normal; word-spacing: 0px; white-space: normal; border-collapse: separate; border-spacing: 0px; orphans: 2; widows: 2;"><div style="-ms-word-wrap: break-word;">--</div></span></div></span><span class="ecxApple-style-span" style="font-family: Helvetica;">Dragiša Durić</span><span class="ecxApple-style-span" style="text-transform: none; line-height: normal; text-indent: 0px; letter-spacing: normal; font-family: Helvetica; font-style: normal; font-variant: normal; font-weight: normal; word-spacing: 0px; white-space: normal; border-collapse: separate; border-spacing: 0px; orphans: 2; widows: 2;"><div style="-ms-word-wrap: break-word;"><span class="ecxApple-style-span" style="text-transform: none; line-height: normal; text-indent: 0px; letter-spacing: normal; font-family: Helvetica; font-style: normal; font-variant: normal; font-weight: normal; word-spacing: 0px; white-space: normal; border-collapse: separate; border-spacing: 0px; orphans: 2; widows: 2;"><div style="-ms-word-wrap: break-word;"><div><a href="mailto:dragisha@m3w.org">dragisha@m3w.org</a></div><div><br></div></div></span></div></span></span><br class="ecxApple-interchange-newline">
</div>
<br></div></blockquote></div><br></div> </div></body>
</html>