Edward Diener wrote:
#pragma push -someoptions
The options from windows.h of C++Builder 6 Pro are #pragma option push -b -a8 -pc -A- /*P_O_Push*/ along with the pop at the bottom. These are: -b: Force enums to be of integer size -a8: Force 8 byte alignment on structs -pc: Force 'C' calling convention -A-: Disable use ANSI keywords and extensions (because windows headers won't compile in strict ansi mode, apparently) For Borland, it might also be worth adding -Vg- which disables CodeGuard. Just in case there are allocations done in inline code in header files which are then freed in methods in the compiled lib (which may/may not have been built with CodeGuard). Also, being able to disable some of these options or all of them with a #define would also be useful so that you could link with the code directly (as I have done to get round the current problems) and there fore build with CodeGuard and other options to test the library. Unfortunately I haven't used any compilers other than bcc32 (for a long time anyway) to be able to help/test other versions of the headers, but I can help with the Borland version of them. Cheers Russell