
At 08:55 PM 4/29/2005 +0300, Peter Dimov wrote:
Comeau Computing wrote:
At 06:04 PM 4/26/2005 +0300, Peter Dimov wrote:
For shared_ptr in particular, I'd appreciate if "minimal support" includes recognizing __stdcall (and optionally __declspec(dllimport) but I think that this is not required) in strict mode so that it can import InterlockedIncrement and friends from the Windows kernel. Another alternative would be to pass the _InterlockedIncrement intrinsic to the underlying VC++ backend as-is, if possible.
The minimal support mentioned above was for non-strict mode. Anyway, we're favoring the former for now for a new combo strict mode when that bridge is crossed.
There is also the option of introducing
#pragma backend ...
that simply injects
#pragma ...
in the generated C code.
This would enable me to use
#pragma backend intrinsic( _InterlockedIncrement )
for como-win32-vc*.
I have verified that this results in generated C code that compiles fine with the VC backend (by inserting the above #pragma manually at the appropriate location).
This seems familiar and believe that although you are correct that the C code will compile fine, there were still some link problems or something to work out... exactly what alludes me at the moment, but I should have notes on that somewhere, so will revisit this especially in light of other progress. - Greg ------- Comeau C/C++ 4.3.3: Watch for our Mac port Comeau C/C++ ONLINE ==> http://www.comeaucomputing.com/tryitout World Class Compilers: Breathtaking C++, Amazing C99, Fabulous C90. Comeau C/C++ with Dinkumware's Libraries. Have you tried it? comeau@comeaucomputing.com http://www.comeaucomputing.com