>
> The problem is actually linked to the optimizations in the release code.
> If you compile it without optimizations (for example, in Debug mode), it
> compiles successfully.

Testing ... Without -O2 it compiles ok, -O1, -O2 fails, -O3 is ok.

> I made some tests, and you can compile all the rest of the files (if you
> don't use the amalgamation file)

I am using the TEA tarball, which is based on the amalgamation.

>with release flags; and you can even
> compile btree.c if you do the following:
> - Select btree.c
> - Right-click the file in the FileView and select 'Settings' from the menu
> - Select the 'C/C++' tab on the right
> - Select 'Customize' in the Optimizations box
> - Mark all the check boxes in the list, EXCEPT for:
>      Assume Aliasing Across Function Calls*
>      Favor Small Code
> - Select the Online _inline option in the inline functions box
> - Click OK
>
> Now it should compile (my VC6 with SP6 compiler reads Version 12.00.8804).

My cl (with SP6 installed) gives me the same version, i.e. 12.00.8804. so we
are on the same page there.

> As this is just an optimization that fails, the code should work.
>
> * The actual problem is with this option. It can probably be turned of
> specifically for this file using a VC6 macro

Ok... Will see if I can find pragmas to set the opt level for parts of a
single file ...
And find out what O1/2/3 mean, too.


Thanks for that information.

--
        Andreas Kupries <[EMAIL PROTECTED]>
        Developer @ http://www.ActiveState.com
        Tel: +1 778-786-1122



-----------------------------------------------------------------------------
To unsubscribe, send email to [EMAIL PROTECTED]
-----------------------------------------------------------------------------

Reply via email to