incubator-stdcxx-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Farid Zaripov" <>
Subject Re: _RWSTD_LIB_SRC macro is not #defined in src/export.cpp
Date Sat, 01 Dec 2007 00:19:16 GMT
From: Martin Sebor []
Subject: Re: _RWSTD_LIB_SRC macro is not #defined in src/export.cpp

> The _RWSTD_INSTANTIATE_TEMPLATES part is an implementation detail
> of _RWSTD_LIB_SRC. If we were to add another detail like that we'd
> have to also remember to update export.cpp. That seems just as
> brittle as what we're doing now (i.e., not #defining _RWSTD_LIB_SRC).

>   The #define _RWSTD_LIB_SRC in every library src file is needed
> for the implementing the autolinking feature on MSVC.

> I see. You're adding a #pragma comment to _config.h that expands
> when _RWSTD_LIB_SRC is #defined and you need it to expand in all
> library sources, correct?
  No. The #pragma comment directive should be expanded only in user's
source files (actually it's enough to expand this directive in only one
source file of the user's project, but we can't handle this).
  At the same time #pragma comment shouldn't expanded in library source
files, elsewere the linker will search libstdxx.lib while linking the library
itself and will fail with the error "libstdxx.lib not found".
  The negative effect of the using autolinking feature is the case when user
uses the some part of the library, that fully implemented in header files
and the user don't have to link its project with stdcxx library, but
#pragma comment will force the linker to search and use the specified library.
For that case there handled _RWSTD_NO_EXT_AUTOLINK macro.

  • Unnamed multipart/mixed (inline, None, 0 bytes)
View raw message