Visual C++ Runtime Library question

J

Jonathan Wilson

acording to
http://groups.google.com/groups?hl=en&lr=&ie=UTF-8&[email protected]
one "Ed Dore[MSFT]" said "The VC libraries team is looking at getting more
of the sources out with future releases though."

Can someone from Microsoft explain A.if this is happening or not
and B.why the source code in question is not included in the first place
Checking my Visual Studio .NET 2003 folder, I can see the following
non-open files:
almap.lib
conv.lib
eh.lib
rtc.lib
sdknames.lib
tcmap.lib
tcmapdll.lib
tran.lib
atlssup.obj
chkesp.obj
eh3valid.obj
ehprolog2.obj
ehprolog.obj
ehvccctr.obj
ehvcccvb.obj
ehvecctr.obj
ehveccvb.obj
ehvecdtr.obj
exsup2.obj
exsup3.obj
exsup.obj
ftol2.obj
longjmp.obj
matherr.obj
oldexcpt.obj
sehprolg.obj
sehsupp.obj
setjmp3.obj
setjmp.obj
setjmpex.obj
strdup.obj
tlssup.obj
comsupp.lib
comsuppd.lib
comsuppw.lib
comsuppwd.lib
delayimp.lib
largeint.lib
oldnames.lib
RunTmChk.lib

Looking at the list, I see:
Exception Handling, RTTI and related support.
Thread Local Storage support.
RunTimeCheck support.
Floating Point code.
Large Integer code.
Delay Load Helper code.
Some wierd libraries like oldnames.lib and sdknames.lib (although to be
fair, these libraries seem to only exist to map one possible name for <x>
to another possible name for <x> to maintain backwards compatibility)
Compiler COM support code (#import directive for importing COM type
libraries I guess)
and a random misc file, strdup.obj.

Whats interesting is that VC6 (but not 7 or 7.1) includes sehsupp.c.
Also, VC7 includes source for comsupp.lib family but not VC6 or VC71
And, the new Visual C++ express download contains tlssup.c and I think 1 or
2 others) but its not in any other version of Visual C++ that I have seen.

As for why they arent included, I am guessing that its mainly because they
A.reveal internal compiler and/or OS details that microsoft doesnt want to
reveal
B.dont actually contain any code, instead just contain implementation
details that, if changed, will break stuff (like e.g. atlssup.obj appears
to contain such details)
or C.cannot be released because Microsoft doesnt own all the code or is
under NDA or otherwise does not own all the IP necessary to release it.
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top