incubator-stdcxx-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Martin Sebor <se...@roguewave.com>
Subject Re: __rw_once warnings in non-reentrant Windows builds?
Date Tue, 16 Oct 2007 21:02:42 GMT
Andrew Black wrote:
> Martin Sebor wrote:
>> Andrew Black wrote:
>>> Martin Sebor wrote:
>>> [snip]
>>>>> CRT's, so the 11s builds are compiled with the same options as the 15s
>>>>> (11d == 15d, 8s|d == 12s|d).
>>>> Ugh. That means we've been doing a whole bunch of redundant builds
>>>> on Windows.
>>> I think it would be more accurate to say that some of the builds have
>>> been mislabeled and perhaps slightly misconfigured.  Those builds would
>>> be the 8s and 11s builds with the Intel compiler.
>> I'm not sure I understand. Are you saying that we haven't been
>> doing duplicate builds with MSVC? I see a few 11s builds but no
>> 11d's, and a number of 8s but no 12s. I've always thought the
>> choice of builds was essentially arbitrary and that some types
>> were simply not being exercised but it's beginning to look like
>> there's actually some deeper logic to the schedule.
> 
> We've never intentionally done 8d and 11d builds on windows, as best I
> can remember.  With MSVC 7.1 and GCC, we've been doing 8s, 11s, 12d and
> 15s.

And (this is probably a question for Farid) are 8s and 11s with
MSVC 7.1 the same 12s and 15s with the same compiler?

> This has also been done with Intel 9.1 and 10.0 on 32-bit windows
> as a holdover from Intel 8.1 or 9.0, which used the MSVC 7.1 compiler.
> For MSVC 8.0 and Intel on 64-bit windows, we are doing only 12d and 15s
> builds.
> 
> The logic behind these choices has been that 12d is the most common type
> of build for end-users, so 15s has been select to test the other half of
> the relevant logic trees in reentrant builds.  For non-reentrant builds,
> we only performed 8s and 11s builds, as the compiler doesn't have
> switches for non-reentrant dynamic builds.

But we do, right? I.e., we (and our users) can still choose to do
non-reentrant shared library stdcxx builds (as well as those of
SourcePro, unless it takes some additional steps to prevent them
from doing so). The compiler options you're referring to only
affect what type of runtime library is linked in, but not what
type of object code is generated correct?

> Had non-reentrant dynamic
> builds been supported, we likely would have performed 8s and 11d builds,
>  to test the release/static and debug/dynamic combinations.

Gotcha.

Martin

Mime
View raw message