Source code of Windows XP (NT5)
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

6523 lines
223 KiB

  1. ***************************************************************************
  2. ***************************************************************************
  3. *** ***
  4. *** This file contains the change history for the MSVC++ v7.0 C/C++ ***
  5. *** Run-Time Libraries (that is, modifications since since 6.0). ***
  6. *** The file should always be edited at the top so that the most ***
  7. *** recent changes are at the beginning of the file (immediately ***
  8. *** after this comment) and the oldest changes are at the end. ***
  9. *** ***
  10. ***************************************************************************
  11. ***************************************************************************
  12. -----------------------------------------------------------------
  13. Mon 25-Jun-01 (BryanT)
  14. crtw32\heap\heapinit.c
  15. crtw32\lowio\chsize.c
  16. Allocate large buffers off the heap instead of the stack so services.exe/winlogon
  17. don't fail (they have 8k stacks by default).
  18. -----------------------------------------------------------------
  19. Wed 13-Jun-01 (BryanT)
  20. crtw32\startup\tidtable.c
  21. Call _mtterm() if there's a failure during _mtinit() so any allocated resources
  22. are freed. Also revert the change to dllcrt0.c and crtdll.c. This will need
  23. to wait till post Whistler to fix (there's some apps that depend on DllMain
  24. not getting a PROCESS_DETACH if PROCESS_ATTACH returned FALSE. The result was
  25. double free of resources. A leak is the lesser of two evils here... :-(
  26. -----------------------------------------------------------------
  27. Wed 16-May-01 (BryanT)
  28. crtw32\startup\dllcrt0.c
  29. crtw32\dllstuff\crtdll.c
  30. Fix DllMainCRTStartup to call DllMain(PROCESS_DETACH) if attach failed.
  31. This matches the OS behavior and fixes a app verifier bug.
  32. -----------------------------------------------------------------
  33. Fri 11-May-01 (BryanT)
  34. crtw32\convert\atox.c
  35. Don't AV if a null ptr is passed to atox/wtox. Just return 0.
  36. -----------------------------------------------------------------
  37. Wed 09-May-01 (SHanson, PhilipLu)
  38. crtw32\h\string.h, wchar.h
  39. crtw32\string\ia64\memcpy.s, memmove.s [NEW]
  40. crtw32\string\lsources, sources.nt
  41. libw32\inc64\string.h, wchar.h
  42. libw32\include\string.h, wchar.h
  43. libw32\msvcrt.src, syscrt.src, syscrt64.src
  44. makefile, makefile.inc
  45. srcrel\objects.mkf, pd-b
  46. VS7#195834 (sort of) Replace IA64 memcpy and memmove, and move memcpy,
  47. memmove, and memset so they are static-link components of the IA64 CRT
  48. DLL, to avoid the overhead of calling into the DLL. Maintain the
  49. existing exports of these routines from the DLL for old code. Also,
  50. since memmove used to be dllimport, keep the __imp_ definition in the
  51. implib by marking memmove as a DATA export in the def files, allowing
  52. existing .obj files to find the necessary definition.
  53. -----------------------------------------------------------------
  54. Mon 07-May-01 (PhilipLu)
  55. crtw32\stdhpp\fstream
  56. libw32\include\fstream
  57. VS7#249553 Bad interaction between wifstream and tellg turned out to
  58. be bugs in basic_filebuf::seekoff and seekpos, which failed to properly
  59. handle pushback characters (which get used all the time for wchar_t
  60. streams).
  61. -----------------------------------------------------------------
  62. Thu 03-May-01 (PhilipLu)
  63. crtw32\stdhpp\xlocale
  64. libw32\include\xlocale
  65. VS7#248580 I recently changed std::_Maklocstr, adding a 3rd argument
  66. of type std::_Locinfo::_Cvtvec&. That's illegal under /Za, since a
  67. non-const ref can only be bound to an lvalue. The arg should have been
  68. const std::_Locinfo::_Cvtvec&.
  69. crtw32\stdhpp\list, vector
  70. libw32\include\list, vector
  71. VS7#248877 The ctors for std::vector(size_type _Count) and
  72. std::list(size_type _Count) could both potentially leak resources if
  73. constructing the default fill value threw.
  74. -----------------------------------------------------------------
  75. Wed 02-May-01 (PhilipLu)
  76. crtw32\h\i386\ivec.h
  77. libw32\include\ivec.h
  78. VS7#239974 Disable C4799 inside ivec.h if _SILENCE_IVEC_C4799 is defined.
  79. As written, this header will generate that warning, but that is to be
  80. expected, since the code uses MMX intrinsics without an EMMS or _m_empty
  81. in each function. Allow users to shut up the warning, but don't do so
  82. unconditionally, since clients of ivec.h need to understand the potential
  83. for problems if they don't use EMMS in their own code.
  84. -----------------------------------------------------------------
  85. Wed 02-May-01 (GautamB)
  86. crtw32\rtc\error.cpp
  87. makefile
  88. VS7#241349 Removed the runtmchk.lib dependencies on CRT by adding obj to
  89. runtmchk.lib. earlier runtmchk.lib was same as rtc.lib but now it also
  90. includes exsup.obj exsup3.obj sehprolog.obj chkstk.obj.
  91. -----------------------------------------------------------------
  92. Tue 01-May-01 (BryanT)
  93. crtw32\startup\crt0dat.c
  94. Remove TerminateProcess() call. There's no need to do this here when
  95. simply exiting the function would serve the same purpose.
  96. -----------------------------------------------------------------
  97. Mon 30-Apr-01 (BryanT)
  98. crtw32\dllstuff\crtlib.c
  99. Remove _NTSDK and simply return FALSE if the OS is incorrect.
  100. crtw32\dllstuff\crtexe.c
  101. Don't fail to run on getmainargs failure - need to run downlevel.
  102. crtw32\dllstuff\adjustfd.c, wildcard.c
  103. Remove _NTSDK.
  104. fpw32\include\trans.h
  105. fpw32\tran\amd64\ieee.c
  106. AMD64 changes from DaveC
  107. libw32\msvcrt.src
  108. Fix Win64 Syscrt build - add set/query_new_handler/mode
  109. -----------------------------------------------------------------
  110. Sun 29-Apr-01 (BryanT)
  111. crtw32\startup\crt0.c
  112. Fix posix build
  113. -----------------------------------------------------------------
  114. Wed 25-Apr-01 (PhilipLu)
  115. crtw32\misc\initcrit.c
  116. VS7#244210 It isn't safe to call LoadLibrary/FreeLibrary during DllMain,
  117. so use GetModuleHandle instead in __crtInitCritSecAndSpinCount.
  118. -----------------------------------------------------------------
  119. Tue 24-Apr-01 (PhilipLu)
  120. crtw32\rtc\error.cpp
  121. crtw32\stdhpp\xlocale
  122. libw32\include\xlocale
  123. makefile
  124. langapi\undname\testundn.mak, undname.inl, undname.mak
  125. VS7#243471 Build the CRT with /Zc:forScope, and get rid of all
  126. instances of non-conformant for scoping in the build. Also change the
  127. standalone makefiles used for langapi\undname to use /Zc:forScope, to
  128. prevent CRT build problems appearing after FE checkins to undname.
  129. -----------------------------------------------------------------
  130. Thu 19-Apr-01 (PhilipLu)
  131. crtw32\h\malloc.h
  132. crtw32\heap\resetstk.c
  133. libw32\include\malloc.h
  134. libw32\inc64\malloc.h
  135. VS7#239962 _resetstkoflw did not work on Win9x. Simplified some tests
  136. which were not correct for Win9x, tweaked the test for attempting to
  137. set a guard page too low (Win9x and WinNT have different requirements),
  138. and set a guard page as PAGE_NOACCESS instead of PAGE_GUARD for Win9x.
  139. Also changed the return from void to int, and return a nonzero success
  140. code if the stack reset worked.
  141. -----------------------------------------------------------------
  142. Fri 13-Apr-01 (GautamB)
  143. crtw32\eh\frame.cpp
  144. VS7#236286 Fixed a problem with a rethrow without a throw and catch(...)
  145. -----------------------------------------------------------------
  146. Fri 13-Apr-01 (KarlSi)
  147. makefile
  148. VS7#233650 Move the location of the VC CRT build's DLL PDB files out
  149. of the dll_pdb subdirectory, back to the same directory as the DLLs.
  150. Part of allowing the build lab to build VC CRTs without full paths
  151. in the PDB info. For now, the Sys CRTs still have their DLL PDB files
  152. down under dll_pdb.
  153. -----------------------------------------------------------------
  154. Fri 13-Apr-01 (GautamB)
  155. crtw32\eh\frame.cpp
  156. VS7#236286 Fixed problem of rethrow of Seh to be caught by __except.
  157. -----------------------------------------------------------------
  158. Fri 13-Apr-01 (PhilipLu)
  159. crtw32\stdhpp\complex, sstream, xlocmon, xstring
  160. libw32\include\complex, sstream, xlocmon, xstring
  161. libw32\msvcprt.src
  162. VS7#226252 Remove explicit dllexport/import of some internal template
  163. base classes (_Complex_base, _Mpunct, _String_val), now that the C++
  164. frontend will implicitly apply dllexport/import for these base classes.
  165. More importantly, stop dllimporting std::allocator just because xstring
  166. has been included. That breaks people who define their own operator
  167. new, and expect that new to be used for STL collection classes. That
  168. wasn't happening in modules that included xstring, but was for other
  169. modules, leading to cross-heap delete crashes.
  170. std::allocator is not a base class of basic_string; it's a member of
  171. the _String_val base class. So the fix here is to get rid of the
  172. explicit _CRTIMP2 specialization of allocator in xstring, and to
  173. disable the C4251 warning complaining about an object member not being
  174. dllimport in a class that is dllimport. That warning isn't a problem
  175. here, because every use of the allocator member is within a member
  176. function that will be dllimported, and thus hidden away.
  177. Until the next LKG update, the C++ CRT DLL must still export the
  178. allocator members, but these are now private exports so they don't
  179. appear in the implib.
  180. -----------------------------------------------------------------
  181. Thu 12-Apr-01 (PhilipLu)
  182. crtw32\stdcpp\wlocale.cpp
  183. crtw32\stdhpp\xlocale, xlocmon, xlocnum, xloctime
  184. libw32\include\xlocale, xlocmon, xlocnum, xloctime
  185. VS7#230612 The Dinkumware code had a number of problems with wchar_t
  186. facets in Asian locales that use MBCS. Underneath the wchar_t facet,
  187. all real work was done in MBCS, but the conversion between Unicode and
  188. MBCS didn't handle leadbytes at all. Fixes were made to _MAKLOCSTR,
  189. ctype<wchar_t>::do_widen & do_narrow, and time_put<wchar_t>::do_put.
  190. -----------------------------------------------------------------
  191. Mon 09-Apr-01 (PhilipLu)
  192. crtw32\stdcpp\iosptrs.cpp, locale.cpp, locale0.cpp
  193. crtw32\stdhpp\xlocale, xmemory
  194. libw32\msvcprt.src
  195. Remove code under _RETAIN_OLD_CRT_CODE that isn't needed now that the
  196. 9176 LKG update has taken place. There is still some code present
  197. under _RETAIN_OLD_CRT_CODE, for the 21-Mar-01 checkin.
  198. crtw32\stdhpp\cctype, cerrno, clocale, cmath, csetjmp, csignal, cstdarg,
  199. cstddef, cstdio, cstdlib, cstring, ctime, cwchar, cwctype, deque,
  200. exception, hash_map, hash_set, list, map, memory, set, typeinfo, vector,
  201. xdebug, xhash, xmemory, xstring, xtree, yvals.h
  202. crtw32\tools\win32\relinc.if, relinc64.if
  203. libw32\include\cctype, cerrno, clocale, cmath, csetjmp, csignal, cstdarg,
  204. cstddef, cstdio, cstdlib, cstring, ctime, cwchar, cwctype, deque,
  205. exception, hash_map, hash_set, list, map, memory, set, typeinfo, vector,
  206. xdebug, xhash, xmemory, xstring, xtree, yvals.h
  207. Remove references to _GLOBAL_USING and _HAS_MEMBER_TEMPLATES_REBIND,
  208. now that the LKG update has picked up these being permanently enabled.
  209. All code under the #if arms for these names not set has been removed,
  210. at the request of Dinkumware.
  211. -----------------------------------------------------------------
  212. Mon 09-Apr-01 (GautamB)
  213. crtw32\eh\frame.cpp
  214. VS7#234115 uncaught_exception was not working for CLR. Fixed it.
  215. -----------------------------------------------------------------
  216. Fri 06-Apr-01 (PhilipLu)
  217. crtw32\dllstuff\crtlib.c
  218. VS7#235781 If CRT DLL is unloading without doexit() having been called
  219. already, then we need to call _cexit, not _c_exit, to make sure all the
  220. terminators are called (flush stdio, remove tmpfiles, ...). This can
  221. happen more easily now with the URT dynamically loading and unloading
  222. the CRT DLL for C#/VB calling into the CRT DLL via P/Invoke.
  223. fpw32\tran\i386\87cdisp.asm
  224. VS7#132450 sinh was incorrectly reporting an _UNDERFLOW error to
  225. _matherr on denormal inputs. Turns out the internal error handling
  226. for the CHECKOVER case was doing the same thing as the CHECKRANGE case,
  227. checking for overflow and underflow, when it's supposed to only look
  228. for overflow. CHECKOVER is only used by sinh and cosh, and cosh will
  229. never underflow, since cosh(x) >= 1, so sinh is the only FP API that
  230. could be hit by this longstanding (1992 or so) bug.
  231. -----------------------------------------------------------------
  232. Thu 05-Apr-01 (PhilipLu)
  233. crtw32\stdhpp\xhash
  234. libw32\include\xhash
  235. PJP noticed an additional change, to _Hash<T>::clear(), that was
  236. missing in the Mar 25 and Apr 4 updates.
  237. -----------------------------------------------------------------
  238. Wed 04-Apr-01 (PhilipLu)
  239. crtw32\convert\tolower.c, toupper.c
  240. crtw32\stdcpp\_tolower.c, _toupper.c
  241. crtw32\stdcpp64\_tolower.c, _toupper.c
  242. VS7#232853 _tolower, _toupper, and the Dinkumware equivalents, when
  243. returning a double-byte char, were returning (leadbyte + trailbyte<<8).
  244. It's supposed to be (leadbyte<<8 + trailbyte).
  245. crtw32\stdhpp\xhash
  246. libw32\include\xhash
  247. VS7#233708 The fix for 230612 on Mar 25 was incomplete, breaking
  248. hash_map. Fix _Hashval() to use _Mask instead of _Vec.size().
  249. -----------------------------------------------------------------
  250. Mon 02-Apr-01 (BryanT)
  251. crtw32\crt32.nt
  252. fpw32\fp32.nt
  253. Build /O1 on Ia64 for st/mt/dll variants
  254. crtw32\eh\sources.nt
  255. crtw32\eh\i386\ehprolog2.c
  256. Build ehprolog2.c as a C++ file and document what -d1Binl does
  257. crtw32\helper\nt\makefile.inc
  258. crtw32\helper\nt\sources
  259. Changes to work outside of NT source tree.
  260. crtw32\lowio\cgetws.c
  261. Fix truncation warning from compiler
  262. crtw32\lowui\dlllib\sources
  263. crtw32\stdio\dlllib\sources
  264. Stop trying to undef CRTDLL
  265. crtw32\misc\crtmbox.c
  266. #undef _WIN32_WINNT so the desired value can be forced on.
  267. crtw32\startup\nt\sources
  268. Don't build tidtable for libcnt variant. No one s/b using c++ eh in kernel mode.
  269. fpw32\tran\i386\cmacros.inc
  270. fpw32\tran\i386\cruntime.inc
  271. Delete old copies of files that also exist in crtw32\h
  272. fpw32\tran\i386\cpu_disp.c
  273. leave is #defined to __leave in the NT build. Undef it so we can use it in the inline asm
  274. fpw32\tran\i386\ftol.asm
  275. fpw32\tran\i386\ftol2.asm
  276. fpw32\tran\i386\huge.asm
  277. Use the same cruntime.inc as the rest of the tree.
  278. fpw32\tran\ia64\libm_error.c
  279. fpw32\tran\ia64\libm_support.h
  280. Tweaks for posix build (_POSIX_ is defined, __POSIX__ needs to be the enum value)
  281. -----------------------------------------------------------------
  282. Wed 28-Mar-01 (PhilipLu)
  283. crtw32\bsku\bsku.cpp
  284. crtw32\dllstuff\atonexit.c, crtexe.c, crtlib.c, dll_argv.c, dllargv.c
  285. crtw32\eh\unhandld.cpp
  286. crtw32\h\internal.h
  287. crtw32\linkopts\noarg.c, noenv.c, setargv.c, wsetargv.c
  288. crtw32\lowio\ioinit.c
  289. crtw32\mbstring\mbctype.c
  290. crtw32\misc\charmax.c, lcnvinit.c, onexit.c
  291. crtw32\startup\crt0.c, crt0dat.c, crt0init.c, dllcrt0.c, stdargv.c, stdenvp.c
  292. crtw32\stdio\_file.c
  293. crtw32\time\clock.c
  294. fpw32\tran\i386\cpu_disp.c
  295. VS7#231220 Stop almost all instances of _amsg_exit fatal errors from
  296. showing up in the CRT DLL or a DLL linked with the CRT DLL. Make all
  297. the various startup routines, including those in the .CRT$XI* startup
  298. array, return errors back to the DllMain or mainCRTStartup level instead
  299. of calling _amsg_exit. EXEs will still call _amsg_exit, but now from
  300. the mainCRTStartup level. DLLs, include the CRT DLL, will now just
  301. return FALSE from DLL_PROCESS_ATTACH, failing the load.
  302. One subtlety here: the .CRT$XI* array is processed in EXEs linked to
  303. the CRT DLL, but not in DLLs linked to the CRT DLL. That's because
  304. the only possible .CRT$XI* entry in these circumstances will be for
  305. __lconv_init, if the component was compiled with -J. We only want to
  306. run that initializer for an EXE, not a DLL, because DLLs linked to the
  307. CRT DLL should not override the localeconv() settings of an EXE linked
  308. to the CRT DLL. Since __lconv_init is the only possible entry here,
  309. and it never returns an error, we will process the .CRT$XI* array in
  310. the EXE startup with _initterm instead of _initterm_e (which will
  311. propogate an error code back), so any error will go undetected. That
  312. means we don't have to add a new export to the CRT DLL that would
  313. damage backwards-compatibility.
  314. Of course none of this confusing behavior was documented in the code.
  315. It is now.
  316. crtw32\dllstuff\crtlib.c
  317. crtw32\heap\heapinit.c
  318. crtw32\misc\assert.c, dbgrpt.c, secfail.c, seclocf.c
  319. crtw32\rtc\pdblkup.cpp
  320. crtw32\startup\crt0msg.c, stdargv.c
  321. VS7#231284 GetModuleFileName will not zero-terminate the output buffer
  322. when a name must be truncated to fit. None of the CRT calls to GMFN
  323. accounted for that, exposing them to buffer-overrun problems.
  324. -----------------------------------------------------------------
  325. Tue 27-Mar-01 (PhilipLu)
  326. crtw32\dllstuff\crtlib.c
  327. crtw32\rtc\error.cpp
  328. crtw32\startup\crt0.c, dllcrt0.c
  329. VS7#230286 Always use GetVersionExA, not GetVersionEx, so we don't run
  330. into problems running on Win9x.
  331. srcrel\pd-b
  332. [DELETED:]
  333. crtw32\dllstuff\i386\cinitexe.a, cinitexe.mak
  334. crtw32\lowio\i386\cinitcon.a
  335. crtw32\misc\i386\cinitone.a
  336. crtw32\startup\i386\crt0init.a, crt0init.mak
  337. crtw32\stdio\i386\cinitstd.a, cinittmp.a
  338. crtw32\time\i386\cinitclk.a
  339. Get rid of ancient files that haven't been used since 1994 or so. An
  340. early part of the fix for VS7#231220.
  341. -----------------------------------------------------------------
  342. Mon 26-Mar-01 (PhilipLu)
  343. crtw32\stdhpp\xdebug
  344. libw32\include\xdebug
  345. Back out Saturday's VS buildfix, now that compiler bug VS7#230468 has
  346. been fixed.
  347. -----------------------------------------------------------------
  348. Sun 25-Mar-01 (PhilipLu)
  349. crtw32\h\mtdll.h, setlocal.h
  350. crtw32\misc\inittime.c
  351. crtw32\time\strftime.c
  352. VS7#196892 strftime specifiers %c, %x, and %X return a time formatted
  353. accorded to the current locale data, as specified in the Regional
  354. Settings control panel page, but we weren't handling these correctly.
  355. For calendars more complicated than the basic localized Gregorian, we
  356. can't simply translate the locale formatting string ourself, since it
  357. assumes a large base of knowledge of era/period strings, modified
  358. years, etc. (e.g. this is year 4334 according to one of the Korean
  359. calendar types). For these types, we should just call Win32 APIs
  360. GetDateFormat/GetTimeFormat to handle the formatting. I'm not doing
  361. this for calendar type 1, localized Gregorian, because that seems a
  362. bit riskier in that we might slightly change the existing output when
  363. what we're doing now is fine.
  364. Also fixed the handling of leading zero suppression in _store_winword,
  365. which handles these localized date/time formats (now for calendar type
  366. 1 only). Previously, leading zero suppression wasn't happening at all,
  367. which became clear when I compared the results against that returned
  368. by GetDateFormat/GetTimeFormat.
  369. crtw32\stdhpp\xhash
  370. libw32\include\xhash
  371. VS7#230612 P. J. Plauger sent me a fix for a bug a customer of his
  372. recently ran into. The hash_set/hash_map containers could hit an
  373. infinite loop. In the test case, this happened after a specific list
  374. of about 250 inserts and erases.
  375. -----------------------------------------------------------------
  376. Sat 24-Mar-01 (PhilipLu)
  377. crtw32\stdhpp\xdebug
  378. libw32\include\xdebug
  379. Rolling VS buildfix. Work around compiler bug VS7#230468 exposed by
  380. fix for VS7#201153. Don't declare placement vector operator new/delete
  381. in case non-placement vector new/delete aren't declared. Workaround
  382. will be removed in a day or two.
  383. crtw32\startup\stdargv.c, wincmdln.c
  384. VS7#229081 _acmdln and _wcmdln can be NULL under certain error
  385. conditions, so check them before dereferencing.
  386. crtw32\stdhpp\xlocinfo.h
  387. libw32\include\xlocinfo.h
  388. Add _CRTIMP2 and _CRTIMP to various prototypes in xlocinfo.h.
  389. crtw32\stdhpp\xutility, yvals.h
  390. libw32\include\xutility, yvals.h
  391. Move _cpp_max/_cpp_min #defines from yvals.h to xutility.
  392. crtw32\h\fpieee.h
  393. libw32\include\fpieee.h
  394. libw32\inc64\fpieee.h
  395. Remove workaround for x86 backend bug #163574, error using
  396. __declspec(align) on function parameters (I think).
  397. crtw32\stdhpp\exception
  398. libw32\include\exception
  399. Remove workaround for VS7#227182, VS build problem caused by the
  400. VC debugger having a header named eh.h, the same as a CRT header.
  401. The debugger team has deleted the unneeded header.
  402. crtw32\startup\tlssup.c
  403. The pointer to the callback array in the IMAGE_TLS_DIRECTORY is off by
  404. one, pointing at a NULL, so dynamic TLS inits never had a chance of
  405. working. Bump the pointer to the first actual function pointer. Still
  406. need linker and frontend work to really enable this, which will have to
  407. wait for post-VC7.0.
  408. -----------------------------------------------------------------
  409. Fri 23-Mar-01 (PhilipLu)
  410. crtw32\rtc\error.cpp
  411. crtw32\stdhpp\sstream, streambuf, strstream
  412. libw32\include\sstream, streambuf, strstream
  413. Rolling buildfix. More /Wp64 warnings just got enabled at /W3 and
  414. are firing in RTC and I/O Streams code, so add more casts to shut
  415. them up.
  416. crtw32\stdcpp\_tolower.c, ios.cpp, locale.cpp, locale0.cpp, lsources,
  417. sources.nt, strstrea.cpp, wlocale.cpp, xdebug.cpp [NEW], xlocale.cpp,
  418. xmutex.cpp
  419. crtw32\stdhpp\fstream, locale, streambuf, xdebug [NEW], xlocale, xlocmes,
  420. xlocmon, xlocnum, xloctime
  421. crtw32\time\strftime.c
  422. crtw32\tools\win32\relinc.cmd
  423. doc\copysrc.bat
  424. libw32\include\fstream, locale, streambuf, xdebug [NEW], xlocale, xlocmes,
  425. xlocmon, xlocnum, xloctime
  426. srcrel\pd-b
  427. makefile.inc
  428. VS7#201153 Customers trying to use _CrtDumpMemoryLeaks() instead of
  429. _CRTDBG_LEAK_CHECK_DF were seeing all the internal allocations for the
  430. C++ Standard Library appearing as leaks. The C++ library needed to
  431. make all internal allocations _CRT_BLOCKs, so they are ignored by the
  432. leak detection routines. That includes defining derivatives of
  433. std::allocator and std::basic_string that use the debug CRT heap with
  434. _CRT_BLOCK tagging.
  435. -----------------------------------------------------------------
  436. Fri 23-Mar-01 (BryanT)
  437. crtw32\misc\dirs
  438. crtw32\startup\dirs
  439. crtw32\stdio\dirs
  440. crtw32\string\dirs
  441. fpw32\fp32.nt
  442. fpw32\conv\dirs
  443. fpw32\tran\dirs
  444. Initial work to build the SYSCRT source.
  445. crtw32\misc\amd64\...
  446. crtw32\startup\amd64\...
  447. fpw32\conv\fpinit.c
  448. fpw32\include\cv.h
  449. fpw32\include\tran.h
  450. fpw32\tran\sincosh.c
  451. fpw32\tran\amd64\...
  452. fpw32\tran\tanh.c
  453. AMD64 changes from DaveC
  454. crtw32\misc\dll\sources
  455. crtw32\misc\mt\sources
  456. crtw32\misc\nt\sources
  457. crtw32\misc\psx\sources
  458. crtw32\misc\st\sources
  459. crtw32\startup\dll\sources
  460. crtw32\startup\dlllib\sources
  461. crtw32\startup\mt\sources
  462. crtw32\startup\nt\sources
  463. crtw32\startup\psx\sources
  464. crtw32\startup\st\sources
  465. crtw32\stdio\dll\sources
  466. crtw32\stdio\mt\sources
  467. crtw32\stdio\nt\sources
  468. crtw32\stdio\st\sources
  469. crtw32\string\sources.nt
  470. fpw32\tran\sources.nt
  471. Add missing files.
  472. crtw32\time\utime64.c
  473. Fix POSIX build
  474. -----------------------------------------------------------------
  475. Thu 22-Mar-01 (PhilipLu)
  476. crtw32\h\crtdbg.h, mtdll.h
  477. crtw32\misc\dbgrpt.c
  478. crtw32\startup\mlock.c
  479. libw32\inc64\crtdbg.h
  480. libw32\include\crtdbg.h
  481. VS7#124998 Implement _CrtSetReportHook2. Uses a doubly-linked list to
  482. record registered debug report hook functions. The original function,
  483. _CrtSetReportHook, doesn't meet ATL Server's needs when DLLs try to
  484. register hooks, but cannot guarantee hooks will be added and removed
  485. in LIFO order. In that case, we can end up pointing at a hook function
  486. that has been unloaded.
  487. -----------------------------------------------------------------
  488. Wed 21-Mar-01 (PhilipLu)
  489. crtw32\eh\stdexcpt.cpp
  490. crtw32\h\typeinfo.h
  491. crtw32\stdhpp\exception, new, stdexcept, typeinfo
  492. libw32\inc64\typeinfo.h
  493. libw32\include\exception, new, stdexcept, typeinfo, typeinfo.h
  494. libw32\msvcprt.src, msvcrt.src, syscrt.src, syscrt64.src
  495. makefile
  496. VS7#5327, #5417, #127825 Make a set of exception classes used for RTTI
  497. support, ::bad_cast, ::bad_typeid, and ::__non_rtti_object, identical
  498. to those names in the std namespace, via using directives. Trickier
  499. than it sounds, because the preexisting global and std namespace
  500. definitions were not identical, and I need to preserve the same class
  501. layout and exported methods as existed previously. The slimiest hack
  502. involves the need for ::bad_cast to now have two incompatible ctors,
  503. bad_cast(const char*) and bad_cast(const char* const&). The latter was
  504. the only ctor before, but the former had to be added so std::bad_cast
  505. kept its preexisting ctor. I got rid of bad_cast(const char* const&),
  506. added a private ctor bad_cast(const char* const*), and since the two
  507. of those have identical codegen, added an alias '=' declaration in the
  508. .def file for the main CRT DLL.
  509. The .def file for the C++ DLL now has a number of forwarder lines, e.g.
  510. ??1bad_cast@std@@UAE@XZ = BASECRT.??1bad_cast@@UAE@XZ PRIVATE
  511. to preserve the existing exports from that DLL. These can be removed
  512. once the next LKG update with this code takes place.
  513. The stdhpp changes are to put _Doraise, a protected virtual member of
  514. the exception hierarchy classes in the Dinkumware code, under control
  515. of "#if !_HAS_EXCEPTIONS", since this function is only used by the
  516. special non-throwing version of the C++ Library, which does not need
  517. to use the main CRT's exception classes.
  518. crtw32/stdcpp/stdthrow.cpp
  519. Minor bug noticed while working on the previous checkin. A reference
  520. to stderr should be to _cpp_stderr, for _STATIC_CPPLIB compatibility.
  521. This wasn't detected before because stdthrow is only used for a C++
  522. Library build with _HAS_EXCEPTIONS == 0, which we don't use.
  523. -----------------------------------------------------------------
  524. Tue 20-Mar-01 (PhilipLu for KFrei)
  525. crtw32\rtc\error.cpp, pdblkup.cpp
  526. makefile
  527. VS7#227306 Fix buffer overrun problems in RTC support, and configure
  528. so /GS will not insert cookie checks in any RTC support code, by using
  529. _alloca to allocate any local string buffers.
  530. VS7#224261 Reenable /GS in the CRT build. The static link components
  531. of the msvcrt[d].lib implib must not have any /GS checks in them, since
  532. that adds new dependencies to user code that wasn't previously needing
  533. to run the CRT startup code. Now that the /GS checks in RTC have been
  534. removed, /GS is OK.
  535. srcrel\external.mkf, makefile
  536. A request from the build lab. Unconditionally clear _CL_ in these
  537. makefiles if we're doing a cross-hosted CRT build (i.e. IA64 CRT built
  538. on x86). These makefiles are used to build native-hosted tools needed
  539. during the CRT build, and the lab uses _CL_ to point to the boot-phase
  540. cross-compiler passes during the self-build. Right now, clearing _CL_
  541. is under a define set by the lab only, but they're changing the define
  542. and there's no good reason this can't be unconditional.
  543. -----------------------------------------------------------------
  544. Mon 19-Mar-01 (BryanT)
  545. crtw32\crt32.nt
  546. crtw32\convert\dirs
  547. crtw32\direct\dirs
  548. crtw32\dllstuff\dirs
  549. crtw32\dos\dirs
  550. crtw32\eh\dirs
  551. crtw32\exec\dirs
  552. crtw32\heap\dirs
  553. crtw32\helper\dirs
  554. crtw32\iostream\dirs
  555. crtw32\lowio\dirs
  556. crtw32\mbstring\dirs
  557. Initial work to build the SYSCRT source.
  558. crtw32\convert\mbtowc.c
  559. Change _NTSUBSET_ version to use RtlAnsiCharToUnicodeChar instead of
  560. RtlAnsiByteToUnicodeN.
  561. crtw32\convert\toupper.c, tolower.c
  562. crtw32\h\cmacros.inc
  563. crtw32\h\stddef.h
  564. crtw32\lowio\osfinfo.c
  565. Bring over change from naughty word police.
  566. crtw32\direct\sources.nt
  567. crtw32\eh\dll\sources
  568. crtw32\eh\dlllib\sources
  569. crtw32\eh\mt\sources
  570. crtw32\eh\st\sources
  571. crtw32\heap\dll\sources
  572. crtw32\heap\mt\sources
  573. crtw32\heap\st\sources
  574. crtw32\lowio\dll\sources
  575. crtw32\lowio\mt\sources
  576. crtw32\lowio\st\sources
  577. Add missing files.
  578. crtw32\dllstuff\crtlib.c
  579. Add stricter test at load time to preclude dll from loading on downlevel
  580. OS's (actually any OS besides the one it was built for).
  581. crtw32\dllstuff\amd64\dllsup.c, throw.cpp
  582. crtw32\dllstuff\dlllib\sources
  583. crtw32\h\cruntime.h
  584. crtw32\h\sect_attribs.h
  585. crtw32\h\setjmp.h
  586. crtw32\h\stdarg.h
  587. crtw32\linkopts\sources
  588. AMD64 changes from DaveC
  589. crtw32\eh\nt\...
  590. Delete - C++ eh not supported in kernel mode.
  591. ...\alpha\...
  592. ...\axp64\...
  593. crtw32\helper\sources.nt
  594. Delete - alpha/axp64 no longer an issue
  595. crtw32\helper\nt\makefile.inc
  596. Add rule to publish sehprolog.obj
  597. crtw32\small\...
  598. Delete - small.lib was used for alpha/axp64/mips/ppc. It's no longer interesting.
  599. -----------------------------------------------------------------
  600. Sun 18-Mar-01 (PhilipLu)
  601. crtw32\stdhpp\exception
  602. libw32\include\exception
  603. VS7#5283 Names terminate, set_terminate, terminate_handler, unexpected,
  604. set_unexpected, and unexpected_handler all need to be placed in
  605. namespace std, as well as the global namespace where they exist now.
  606. crtw32\h\stdexcpt.h
  607. libw32\include\stdexcpt.h
  608. libw32\inc64\stdexcpt.h
  609. Cleanup noticed while making the change for VS7#5283. There's a block
  610. of code that's been under an "#elif 0" for 5 years. It can be removed.
  611. crtw32\h\cruntime.h, new.h
  612. crtw32\heap\setnewh.cpp
  613. crtw32\stdcpp\stdhndlr.cpp
  614. crtw32\tools\win32\relinc.if, relinc64.if
  615. libw32\msvcrt.src, syscrt.src
  616. libw32\include\new.h
  617. srcrel\msvc40.if
  618. VS7#194908 Headers new.h and new were incompatible if you tried to use
  619. set_new_handler. The main CRT had an archaic version of
  620. ::set_new_handler, in setnewh.cpp, which asserted if you passed in
  621. anything except NULL. This has been superceded by the implementation
  622. of std::set_new_handler in the Dinkumware-supplied stdhndlr.cpp, but
  623. the headers botched forcing any use of set_new_handler to the std one.
  624. Fixed so including <new> will define std::set_new_handler and
  625. std::new_handler, while including <new.h> will define those two names,
  626. and inject them with using directives as ::set_new_handler and
  627. ::new_handler.
  628. setnewh.cpp, with the old definition of ::set_new_handler, is retained
  629. for backwards compatibility with old binaries, but this routine is
  630. no longer available through the headers. The old function is forcibly
  631. exported from the main CRT DLL.
  632. Defined _USE_OLD_STDCPP in cruntime.h when the old stdcpp64/stdhpp64
  633. files are used, so the changes to new.h can be done only when using
  634. stdcpp/stdhpp instead. Configured the relinc process so the include
  635. files for Win64 syscrts use the old new.h definitions, everything else
  636. uses the new ones.
  637. crtw32\stdhpp\new
  638. libw32\include\new
  639. Noticed while making the change for VS7#194908 that the fix for
  640. VS98#18416 had been undone. A declaration of a non-existant "_New_hand"
  641. had slipped back into the header.
  642. makefile
  643. Back out the actual makefile enabling of /GS that was checked in
  644. yesterday. The VS build is failing because of the extra CRT
  645. dependencies this causes, and I need to investigate why.
  646. -----------------------------------------------------------------
  647. Sat 17-Mar-01 (PhilipLu)
  648. crtw32\dllstuff\crtlib.c
  649. crtw32\startup\crt0.c, dllcrt0.c
  650. makefile
  651. VS7#224261 Turn on /GS in the x86 CRT. Not totally trivial, because
  652. the startup code that initializes the global guard cookie can't trigger
  653. the compiler's local buffer overrun guard logic, since the global cookie
  654. on entry will differ from that on exit. Worked around by allocating the
  655. OSVERSIONINFO via _alloca.
  656. crtw32\stdhpp\xloctime
  657. libw32\include\xloctime
  658. VS7#159194 Addition to Dinkumware drop 3.10. The time_get facet was
  659. not accepting dates in the same format as time_put was outputting.
  660. crtw32\stdhpp\streambuf
  661. libw32\include\streambuf
  662. Tweak to the Dinkumware drop 3.10, to bring changes I made in line with
  663. the official Dinkumware version. Just moved a _Mutex base class in
  664. basic_streambuf to be the first data member instead, and added _Lock
  665. and _Unlock non-virtual member functions.
  666. -----------------------------------------------------------------
  667. Fri 16-Mar-01 (PhilipLu)
  668. crtw32\stdhpp\complex, fstream, ios, istream, locale, ostream, sstream,
  669. streambuf, string, xcomplex, xlocale, xlocmes, xlocmon, xlocnum, xloctime,
  670. xstring
  671. crtw32\tools\win32\relinc.if, relinc64.cmd, relinc64.if [new]
  672. libw32\include\complex, fstream, ios, istream, locale, ostream, sstream,
  673. streambuf, string, xcomplex, xlocale, xlocmes, xlocmon, xlocnum, xloctime,
  674. xstring
  675. VS7#216778 The frontend now allows "template class __declspec(dllimport)
  676. myclass<char>" to mean an explicit specialization should be imported from
  677. a DLL. Previously, you needed to say "extern" at the front of that, which
  678. was an extension, so using it failed under /Za with an error, and under /Ze
  679. you got a C4231 warning. Since the frontend has changed, I've removed the
  680. unneeded extern, along with the pragmas to suppress C4231, allowing the
  681. C++ Standard Library headers to be used /Za /MD[d].
  682. The relinc changes are necessary because now the stdhpp header cleanse
  683. treats __FORCE_INSTANCE as always on, but stdhpp64 must still treat it
  684. as always off. The same relinc.if can no longer be used for both sets
  685. of headers.
  686. -----------------------------------------------------------------
  687. Thu 15-Mar-01 (PhilipLu)
  688. langapi\undname\testundn.cxx, undname.cxx
  689. VS7#5674 Fix of 10-Dec-99 was incomplete. We should use a lock in
  690. __unDNameEx as well as __unDName. Also, added a -x switch to testundn,
  691. the undecorator verification test app, to test __unDNameEx instead of
  692. __unDName. Added heap leak detection to testundn, too, to head off
  693. future problems (no leaks currently).
  694. -----------------------------------------------------------------
  695. Wed 14-Mar-01 (PhilipLu)
  696. crtw32\stdhpp\xmemory
  697. VS7#225243 As part of the 3.10 Dinkumware integration, I removed some
  698. stuff under _RETAIN_OLD_CRT_CODE that I thought was unnecessary. I was
  699. wrong. The code removed is needed until the next LKG update, when the
  700. LKG headers will pick up the enabling of _HAS_MEMBER_TEMPLATES_REBIND.
  701. crtw32\string\strlwr.c
  702. VS7#224860 _strlwr will leak the heap buffer malloc'd if _alloca can't
  703. be used because the stack is almost full. Also some minor formatting
  704. and comment changes to make this file and strupr.c look the same.
  705. crtw32\lowio\getch.c
  706. VS7#224864 _kbhit will leak the heap buffer malloc'd if _alloca can't
  707. be used because the stack is almost full.
  708. crtw32\stdio\input.c
  709. VS7#224990 _input/_winput should only allocate the bit map used for
  710. handling the %[...] spec the first time one of those is seen. The code
  711. was allocating it each time, leaking 8K for the _winput case when the
  712. stack was almost full and malloc was used instead of _alloca.
  713. crtw32\string\strupr.c
  714. VS7#224974 _strupr has a race condition because it passes 0 instead of
  715. the proper per-thread codepage to __crtLCMapStringA. If another thread
  716. changes the global locale between entry to _strupr and the load of the
  717. locale in __crtLCMapStringA, the wrong codepage will be used. Also
  718. some minor formatting and comment changes to make this file and
  719. strlwr.c look the same (which is how this turned up).
  720. -----------------------------------------------------------------
  721. Tue 13-Mar-01 (PhilipLu)
  722. crtw32\stdcpp\_tolower.c, _toupper.c
  723. VS7#190902 std::ctype<>::tolower and toupper use helper functions
  724. _Tolower and _Toupper, which take a pointer to the ctype's locale info,
  725. which may not match the current C library's global locale. But the
  726. helpers weren't using that specific locale when checking if a character
  727. below 0x100 was upper/lowercase.
  728. crtw32\stdcpp\newop2.cpp
  729. VS7#112077 The nothrow version of operator new needs to call malloc
  730. under the try/catch, instead of just calling _callnewh there. That's
  731. because malloc can itself call _callnewh, if _set_new_mode(1) is active.
  732. crtw32\stdcpp\newop.cpp, newop2.cpp
  733. VS7#221760 _callnewh needs to be marked throw(...), so the optimizer
  734. won't discard the try/catch in the nothrow version of operator new.
  735. Also fixed the _callnewh prototype in the throwing operator new for
  736. consistency.
  737. -----------------------------------------------------------------
  738. Mon 12-Mar-01 (PhilipLu)
  739. crtw32\stdcpp\cerr.cpp, cin.cpp, clog.cpp, cout.cpp, delaop2.cpp, delop2.cpp,
  740. fiopen.cpp, instances.cpp, iomanip.cpp, ios.cpp, iosptrs.cpp, iostream.cpp,
  741. locale.cpp, locale0.cpp, newaop.cpp, newaop2.cpp, newop2.cpp, nomemory.cpp,
  742. nothrow.cpp, raisehan.cpp, stdhndlr.cpp, stdthrow.cpp, string.cpp,
  743. strstrea.cpp, uncaught.cpp, wcerr.cpp, wcin.cpp, wclog.cpp, wcout.cpp,
  744. wctrans.c, wctype.c, wiostrea.cpp, wlocale.cpp, xcosh.c, xdateord.cpp,
  745. xdnorm.c, xdscale.c, xdtest.c, xexp.c, xfcosh.c, xfdnorm.c, xfdscale.c,
  746. xfdtest.c, xferaise.c, xfexp.c, xfsinh.c, xfvalues.c, xgetwctype.c,
  747. xlcosh.c, xldnorm.c, xldscale.c, xldtest.c, xlexp.c, xlocale.cpp,
  748. xlock.cpp, xlpoly.c, xlsinh.c, xlvalues.c, xmath.h, xmbtowc.c, xmtx.c,
  749. xmtx.h, xmutex.cpp, xpoly.c, xsinh.c, xstod.c, xtowlower.c, xtowupper.c,
  750. xvalues.c
  751. crtw32\stdhpp\algorithm, bitset, cassert, cctype, cerrno, cfloat, ciso646,
  752. climits, clocale, cmath, complex, csetjmp, csignal, cstdarg, cstddef,
  753. cstdio, cstdlib, cstring, ctime, cwchar, cwctype, deque, exception,
  754. fstream, functional, hash_map, hash_set, iomanip, ios, iosfwd, iostream,
  755. iso646.h, istream, iterator, limits, list, locale, map, memory, new,
  756. numeric, ostream, queue, set, sstream, stack, stdexcept, stl.h, streambuf,
  757. string, strstream, utility, valarray, vector, xcomplex, xhash, xiosbase,
  758. xlocale, xlocinfo, xlocinfo.h, xlocmes, xlocmon, xlocnum, xloctime,
  759. xmemory, xstddef, xstring, xtree, xutility, ymath.h, yvals.h
  760. libw32\include\algorithm, bitset, cassert, cctype, cerrno, cfloat, ciso646,
  761. climits, clocale, cmath, complex, csetjmp, csignal, cstdarg, cstddef,
  762. cstdio, cstdlib, cstring, ctime, cwchar, cwctype, deque, exception,
  763. fstream, functional, hash_map, hash_set, iomanip, ios, iosfwd, iostream,
  764. iso646.h, istream, iterator, limits, list, locale, map, memory, new,
  765. numeric, ostream, queue, set, sstream, stack, stdexcept, stl.h, streambuf,
  766. string, strstream, utility, valarray, vector, xcomplex, xhash, xiosbase,
  767. xlocale, xlocinfo, xlocinfo.h, xlocmes, xlocmon, xlocnum, xloctime,
  768. xmath.h, xmemory, xstddef, xstring, xtree, xutility, ymath.h, yvals.h
  769. Integrate the 010208 drop of the Dinkumware C++ Library, version 3.10.
  770. Fixes bugs VS7#150517 and 157130. Also has a start of the fix for
  771. VS7#188201, but the fix appears to need more work. Most of the work is
  772. some internal framework shuffling to make sure lazy facets aren't
  773. leaked.
  774. crtw32\stdhpp\xutility
  775. libw32\include\xutility
  776. VS7#188201 Permit comparisons between an iterator on the LHS and the
  777. corresponding const_iterator on the RHS, for _Ptrit-based iterators.
  778. The opposite order, const_iterator on the LHS, already worked fine
  779. because we have a ctor that will convert the non-const iterator to the
  780. corresponding const_iterator. For non-const on the left, add global
  781. template functions that match non-const LHS, const RHS and invert the
  782. comparison order so the RHS will get converted to a const_iterator.
  783. crtw32\h\i386\dvec.h, fvec.h, ivec.h
  784. libw32\include\dvec.h, fvec.h, ivec.h
  785. VS7#127210 The Intel-supplied headers [dfi]vec.h, for easier access
  786. to the MMX/SSE/SSE2 intrinsics, used the old I/O streams, and thus
  787. got a deprecated warning when used. Switched to using the supported
  788. Dinkumware I/O streams instead, and moved all the uses under an #ifdef
  789. _ENABLE_VEC_DEBUG, since we don't want to require compiling /GX or
  790. bloating the code whenever these are used.
  791. Also fixed level 1 warnings and a "cout <<" instead of "os <<" that
  792. I ran across while fixing this.
  793. -----------------------------------------------------------------
  794. Fri 09-Mar-01 (PhilipLu)
  795. eh\i386\lowhelpr.asm
  796. misc\i386\exsup.asm, exsup3.asm
  797. VS7#221754 Add .FPO directives to the asm code that calls into the user
  798. code for C++ EH and SEH, so callstacks are correct. Added FPO data for
  799. _CallSettingFrame, _except_handler3, _abnormal_termination, and
  800. _local_unwind2.
  801. makefile, makefile.inc, makefile.sub
  802. Fix and clean the user-rebuild makefiles. My 26-Feb change to the CRT
  803. build broke the user CRT rebuild scenario when the path to the include
  804. directory has spaces in it, as is the default. I needed to put quotes
  805. around $(VCTOOLSINC) in the recursive make invocations. I also noticed
  806. some text in the cleansed makefiles which shouldn't have been there.
  807. There were references to BLD_SYSCRT and DEVBUILD, as well as to the
  808. stdcpp64 directory and some private CRT build tools. Removed them all
  809. using additional STRIPLIN comments.
  810. -----------------------------------------------------------------
  811. Thu 08-Mar-01 (PhilipLu)
  812. crtw32\h\math.h
  813. fpw32\tran\ceil.c, floor.c, lsources, modf.c, sources.nt
  814. fpw32\tran\i386\87ctran.asm, atan.asm, atan_pentium4.asm [NEW],
  815. atan_table.c [NEW], ceil_pentium4.asm [NEW], cpu_disp.c [NEW],
  816. disp_pentium4.inc [NEW], exp_pentium4.asm [NEW], floor_pentium4.asm [NEW],
  817. ftol2.asm [NEW], libm_error.c [NEW], libm_support.h [NEW], log.asm,
  818. log10_pentium4.asm [NEW], log_pentium4.asm [NEW], modf_pentium4.asm [NEW],
  819. pow.asm, pow_pentium4.asm [NEW]
  820. libw32\inc64\math.h
  821. libw32\include\math.h
  822. libw32\msvcrt.src, syscrt.src
  823. srcrel\objects.mkf, pd-b
  824. makefile, makefile.inc
  825. VS7#215249 Pick up improved floating point functions from Intel. Most
  826. of this consists of SSE2-specific versions of ceil, floor, modf, atan,
  827. exp, log, log10, and pow, which are automatically called if running on
  828. an SSE2-capable CPU (i.e. the Pentium4).
  829. This has been in the works for a couple months, and includes a few
  830. minor bugfixes in the existing non-SSE2 code that turned up in
  831. validating the routines:
  832. modf(x) for x a negative integer should return a fractional part
  833. of -0.0, not +0.0
  834. log and log10(-denormal) were not setting an errno of EDOM
  835. pow(+/-0, -denorm) was returning 0 instead of infinity
  836. Note that the SSE2 implementations can be unavoidably different in the
  837. LSB, since SSE2 uses 8-byte FP, and the x87 stack 10 byte. To allow
  838. users to force use of the old routines, I've added new function
  839. _set_SSE2_enable().
  840. So that existing apps using MSVCRT.DLL won't suddenly get different
  841. results on a Pentium4, I've made the system CRT default to not using
  842. the new SSE2 code. You can still call _set_SSE2_enable(TRUE) to
  843. switch to the new routines when running on a Pentium4.
  844. Finally, there's _ftol2, a replacement for _ftol which doesn't need
  845. to change the rounding mode, so it avoids the FLDCW stalls. A new name
  846. is required because it uses 2 slots on the x87 stack, while _ftol only
  847. uses 1. The compiler will have to switch the name of the helper. I've
  848. made _ftol2 statically linked even in msvcrt.lib, so we don't take an
  849. unnecessary indirect branch to get into the CRT DLL.
  850. srcrel\common.mkf, external.mkf, makefile, objects.mkf
  851. makefile
  852. Some additional build work, continuing what was done for VS7#214893
  853. back on 26-Feb. Print out the current TARGET_CPU, LLP64, and
  854. BLD_SYSCRT settings. More importantly, detect attempts to use a
  855. pre-existing build tree that had different values for these vars, or
  856. attempts to use stdcpp when the tree already has stdcpp64 (or vice-
  857. versa), and issue a fatal NMAKE error.
  858. -----------------------------------------------------------------
  859. Wed 07-Mar-01 (PhilipLu)
  860. VS7#221122 My 20-Feb-01 checkin to remove _RT_LOCK fatal errors broke
  861. the CRT running on Win9x, and probably broke it elsewhere too, but NT
  862. was too kind to mention that. I was releasing the _HEAP_LOCK critsec
  863. before I was finished using the heap. Change to free all normal
  864. locks first, so they can be freed from the heap, then free all the
  865. preallocated locks, including _HEAP_LOCK.
  866. -----------------------------------------------------------------
  867. Tue 06-Mar-01 (PhilipLu)
  868. crtw32\stdhpp\xmemory
  869. libw32\include\xmemory
  870. VS7#221135 Turning on _HAS_MEMBER_TEMPLATES_REBIND broke anyone who
  871. wrote their own operator new, compiled /MD[d], and had container
  872. classes (except basic_string) specialized on char, wchar_t or unsigned
  873. short. The problem is std::allocator<T> for those types is dllimported
  874. from msvcp70 (thanks to questionable declarations in xstring), but now,
  875. std::allocator::allocate is a member template function, which means it
  876. is always locally generated, and never specialized. So allocate()
  877. would use the local operator new, and the dllimported deallocate()
  878. would use the CRT operator new, triggering a quick crash.
  879. Fix is just to make the member-template allocate() stop calling global
  880. template function _Allocate() directly, and instead call through a
  881. non-template member form of allocate(), which will be dllimported to
  882. match deallocate().
  883. crtw32\h\i386\mm3dnow.h
  884. libw32\include\mm3dnow.h
  885. VS7#199371 Add prototypes for new 3DNow intrinsics _m_from_float and
  886. _m_to_float.
  887. -----------------------------------------------------------------
  888. Mon 05-Mar-01 (PhilipLu)
  889. fpw32\tran\i386\debug.c, filter_simd.c, xmmi2_fp_emul.c, xmmi_fp_emul.c,
  890. xmmi_types.h
  891. VS7#215249 Pick up Intel's support for the Pentium4 DAZ bit in
  892. _fpieee_flt.
  893. crtw32\stdhpp\xlocale, yvals.h
  894. libw32\include\xlocale, yvals.h
  895. VS7#212255 std::_Tidyfac<_Facet>::_Tidy must be __declspec(unmanaged)
  896. for /clr compiles. This function is registered for callback via atexit,
  897. but by the time it is called, the URT has already been shut down. In
  898. general, any function run at DLL unload must be unmanaged.
  899. crtw32\startup\stdenvp.c
  900. VS7#174755 Fix a null deref problem reported by NT. If
  901. __crtGetEnvironmentStrings[AW] fails and returns a NULL during startup,
  902. _[aw]envptr will be NULL on entry to _setenvp, which failed to check
  903. for that before dereferencing it. Just added a NULL check, issuing
  904. the same _RT_SPACEENV fatal error used elsewhere in _setenvp in
  905. out-of-memory situations.
  906. -----------------------------------------------------------------
  907. Tue 27-Feb-01 (PhilipLu)
  908. crtw32\convert\isctype.c
  909. VS7#213380 Code that compiled /D_DEBUG /ML and was fine in VC6 could
  910. fail to link in VC7. That's because we added a debug test to ctype.h,
  911. which called a routine that was only present in debug CRTs. The CRT
  912. headers use _DEBUG as the flag that a debug CRT is being used, but in
  913. this case, by manually defining _DEBUG, the user is fooling that logic.
  914. The problem is that _DEBUG has been hijacked by other, non-CRT code.
  915. If we had more CRT header code under _DEBUG, the proper fix would
  916. probably be to have cl.exe define both _DEBUG and _CRT_DEBUG if the
  917. /M[LTD]d switches are used, and key the header tests off _CRT_DEBUG
  918. instead. But that can wait until we add more debug header tests.
  919. For now, this is a minor case that only shows up when using /ML and
  920. compiling C, not C++. So we're going with the simpler fix of defining
  921. the missing entrypoint, _chvalidator, in libc.lib, and not in the
  922. other retail CRTs.
  923. srcrel\common.mkf
  924. Tweak the new common.mkf file added yesterday for VS7#214893. If
  925. %VCFLAVOR% exists in the environment, then we look for the native
  926. toolset at, e.g. %DEVTOOLS%\x86\%VCFLAVOR%. If it's not defined,
  927. look for the VC7 and VCLKG trees as before.
  928. -----------------------------------------------------------------
  929. Mon 26-Feb-01 (PhilipLu)
  930. srcrel\common.mkf [NEW], external.mkf, makefile, pd-b
  931. cleanbld.cmd, makefile
  932. VS7#214893 Some CRT build changes to make it easier for other devs to
  933. build the CRT. Previously, the build relied on %VCTOOLS%, and after my
  934. 14-Feb-01 checkin, some fixed paths under %DEVTOOLS%\*\vc7. That's
  935. problematic for people who use vclkg instead of vc7 under devtools.
  936. I'm changing the build so the only thing necessary is %DEVTOOLS%. The
  937. makefiles will search for the flavor of VC that's present under there,
  938. with VC7 taking precedence over VCLKG.
  939. You can also directly specify all the various paths needed, using
  940. %VCTOOLS% or %VCTOOLSINC% for the main CRT build, and %DEVTOOLSBIN%,
  941. %DEVTOOLSLIB%, %DEVTOOLSINC%, and %DEVTOOLSSDKLIB% for the srcrel
  942. tools build.
  943. Makefile and srcrel\common.mkf now have extensive error messaging that
  944. explains what's required if the setup is in some way incorrect.
  945. mk.bat
  946. Trivial change - have mk.bat (which builds the CRT in-place in the
  947. source tree under the build directory) save the build log to bld.log
  948. instead of build.log, so mkbld and mk don't overwrite the other's log.
  949. crtw32\eh\frame.cpp
  950. VS7#217108 Finish up work on new helper function __CxxCallUnwindDtor.
  951. I noticed that the __except(terminate()) should probably be
  952. __except(FrameUnwindFilter(exception_info())), to match the unmanaged
  953. case. That permits SEH to pass out of a dtor unwind, but a throw to
  954. result in a call to terminte(). After testing, MarkLe agreed, so now
  955. it's changed.
  956. -----------------------------------------------------------------
  957. Sun 25-Feb-01 (PhilipLu)
  958. crtw32\stdhpp\yvals.h
  959. VS7#218235 Dinkumware support for MBCS in mbrtowc and other such
  960. routines was busted by the checkin for vs7#202930. The definition
  961. for _cpp_isleadbyte(c) needlessly shifts 'c' right by 8 bits, breaking
  962. the Dinkumware code in locales with leadbytes like Japanese.
  963. -----------------------------------------------------------------
  964. Sat 24-Feb-01 (PhilipLu)
  965. crtw32\eh\frame.cpp
  966. libw32\msvcrt.src, syscrt.src, syscrt64.src
  967. VS7#217108 Add helper function __CxxCallUnwindDtor from MarkLe. It
  968. is called by managed code to handle calling a destructor during an
  969. unwind so that terminate() will be called if the dtor throws.
  970. crtw32\h\i386\dvec.h, emmintrin.h, fvec.h, ivec.h, mmintrin.h, xmmintrin.h
  971. libw32\include\dvec.h, emmintrin.h, fvec.h, ivec.h, mmintrin.h, xmmintrin.h
  972. VS7#217691 Remove "INTEL CONFIDENTIAL" from dvec.h/emmintrin.h, since
  973. SSE2 is now publicly released. Also clean up the header comments,
  974. getting rid of source control system comments and a revision comment.
  975. crtw32\stdhpp\deque, iterator, list, xtree, xutility
  976. libw32\include\deque, iterator, list, xtree, xutility
  977. VS7#216777 Remove #pragma warning controls for C4284 from these C++
  978. Library headers. That warning no longer exists, and a /Wall compile
  979. will issue C4619 complaining about a non-existant warning number being
  980. used by #pragma warning.
  981. -----------------------------------------------------------------
  982. Fri 23-Feb-01 (gautamb)
  983. fpw32\tran\ia64\acos.s, acosf.s, asin.s, asinf.s, atan2.s, atan2f.s, exp.s,
  984. expf.s, ldexp.s, ldexpf.s, pow.s, powf.s, sinh.s, sinhf.s
  985. makefile
  986. VS7#212094 changed the function names in almap.lib to correct ones for ia64
  987. specific case.
  988. Added new math update libm ver 5.5.104
  989. -----------------------------------------------------------------
  990. Fri 23-Feb-01 (gautamb)
  991. crtw32\convert\wcstod.c, wtof.c
  992. crtw32\eh\typname.cpp
  993. crtw32\startup\wild.c
  994. crtw32\stdio\input.c, popen.c
  995. VS7#215477 Added check for return values for malloc. This will avoid some
  996. unwanted AVs in low memory conditions.
  997. -----------------------------------------------------------------
  998. Wed 21-Feb-01 (PhilipLu)
  999. crtw32\misc\initcrit.c
  1000. Buildfix - Yesterday's change to initcrit.c would use
  1001. InitializeCriticalSectionAndSpinCount on Win98/WinME, but that API on
  1002. those OSes is broken. It should return a BOOL success code, but
  1003. instead is a VOID return. Just use InitializeCriticalSection there.
  1004. langapi\undname\undname.cxx
  1005. Forgot to check in the langapi component of VS7#172586.
  1006. -----------------------------------------------------------------
  1007. Tue 20-Feb-01 (PhilipLu)
  1008. crtw32\h\exsup.inc, internal.h, mtdll.h
  1009. crtw32\lowio\ioinit.c, osfinfo.c
  1010. crtw32\misc\initcrit.c
  1011. crtw32\startup\mlock.c, tidtable.c
  1012. crtw32\stdio\popen.c, rmtmp.c, stream.c, tempnam.c, tmpfile.c
  1013. srcrel\pd-b
  1014. [DELETED:]
  1015. fpw32/inc/i386/os2dll.inc
  1016. VS7#172586 Stop issuing _RT_LOCK fatal errors. This is an out-of-memory
  1017. error when a critical section could not be allocated. CRT fatal errors
  1018. have to be avoided if at all possible, because the CRT DLL could be
  1019. used by some long-lived server app (e.g. IIS), and calling ExitProcess,
  1020. as CRT fatal errors do, is unacceptable in such an app. We now
  1021. preallocate all named locks, as well as the FILE* locks for stdin,
  1022. stdout, and stderr. We don't preallocate 4 named locks, but always
  1023. call _mtinitlocknum to allocate those before every use, so failure to
  1024. allocate on the first call can be detected.
  1025. This currently gives 14 preallocated locks, as compared to the 4 we
  1026. previously used. We also detect a failure to allocate a lock for other
  1027. files, and fail the file open instead of abort. Note that one instance
  1028. of _RT_LOCK still exists, when a _lock call is issued on a lock which
  1029. hasn't been allocated yet, but that should never happen. If it does,
  1030. it's an internal error in the CRT.
  1031. As part of this, got rid of file os2dll.inc, which is no longer used,
  1032. and had a number of ancient, incorrect, asm equates for the named locks.
  1033. Also got rid of a bunch of obsolete named locks that are never used.
  1034. -----------------------------------------------------------------
  1035. Wed 14-Feb-01 (PhilipLu)
  1036. cleanbld.cmd
  1037. srcrel\external.mkf, makefile
  1038. The VS team devtools project is being reorganized, so now the CRT build
  1039. requires environment variable DEVTOOLS to be set. Use %DEVTOOLS% to
  1040. find the proper native-hosted components when building the srcrel tools
  1041. during a cross-hosted Win64 CRT build.
  1042. -----------------------------------------------------------------
  1043. Mon 12-Feb-01 (PhilipLu)
  1044. crtw32\stdhpp\yvals.h
  1045. crtw32\include\yvals.h
  1046. VS7#5292 Turn on _GLOBAL_USING to wrap C library in namespace std, once
  1047. again. The new LKG compiler fixes the bugs that prevented this back on
  1048. Dec 8, 2000.
  1049. Also turn on _HAS_MEMBER_TEMPLATES_REBIND now that the compiler is
  1050. capable of handling it, and the VS build has fixed three places
  1051. where a std::map had a const key type. That's illegal - the key must
  1052. be assignable, and _HAS_MEMBER_TEMPLATES_REBIND exposed that problem
  1053. because it generated an allocator<const int>.
  1054. -----------------------------------------------------------------
  1055. Thu 08-Feb-01 (GautamB)
  1056. crtw32\h\stdlib.h
  1057. crtw32\misc\bswap.c
  1058. libw32\inc64\stdlib.h
  1059. libw32\include\stdlib.h
  1060. VS7#209247 added __cdecl before byteswap functions.
  1061. -----------------------------------------------------------------
  1062. Thu 08-Feb-01 (PhilipLu)
  1063. libw32\syscrt64.src
  1064. Buildfix for 64-bit sys CRTs.
  1065. -----------------------------------------------------------------
  1066. Wed 07-Feb-01 (PhilipLu)
  1067. crtw32\h\ctype.h, wchar.h
  1068. crtw32\misc\initctyp.c
  1069. libw32\include\ctype.h
  1070. libw32\inc64\ctype.h
  1071. Buildfixes to complete fix for VS7#202930.
  1072. crtw32\h\math.h, stdio.h
  1073. libw32\inc64\math.h, wchar.h
  1074. libw32\include\math.h, wchar.h
  1075. Cosmetic changes.
  1076. -----------------------------------------------------------------
  1077. Wed 7-Feb-01 (GautamB)
  1078. crtw32\h\ctype.h, mtdll.h, setlocal.h, stdio.h, stdlib.h
  1079. crtw32\misc\ctype.c, initctyp.c, setlocal.c
  1080. crtw32\stdcpp\_tolower.c, _toupper.c, cerr.cpp, cin.cpp, clog.cpp, cout.cpp,
  1081. stdthrow.cpp, wcerr.cpp, wcin.cpp, wclog.cpp, wcout.cpp, xdateord.cpp,
  1082. xmbtowc.c, xstrcoll.c, xstrxfrm.c, xwcscoll.c, xwcsxfrm.c, xwctomb.c
  1083. crtw32\stdhpp\xlocale, yvals.h
  1084. crtw32\stdio\_file.c
  1085. libw32\inc64\stdlib.h
  1086. libw32\include\stdlib.h, xlocale
  1087. libw32\msvcrt.src, syscrt.src, syscrt64.src
  1088. VS7#202930 Fixed problem with _STATIC_CPPLIB to work. there were some
  1089. problem with data being exported from dll.
  1090. crtw32\h\math.h
  1091. libw32\include\math.h
  1092. libw32\inc64\math.h
  1093. VS7#193177 Now we need to define _USE_MATH_DEFINES to define math
  1094. constants
  1095. -----------------------------------------------------------------
  1096. Wed 07-Feb-01 (PhilipLu)
  1097. fpw32\tran\ia64\modf.s, modff.s
  1098. VS7#209420 modf/modff can improperly raise on Invalid Exception if
  1099. passed an FP value greater than the _INT64_MAX. An fcvt.fx.trunc
  1100. should be using .s1 instead of .s0.
  1101. makefile.sub
  1102. VS7#209816 Don't use IA64 compiler option -QIA64_A0 any longer.
  1103. Cl.exe already supplies the proper default.
  1104. -----------------------------------------------------------------
  1105. Thu 14-Dec-00 (PhilipLu) Ported Tue 06-Feb-01 (KarlSi)
  1106. crtw32\stdcpp\xlock.cpp
  1107. crtw32\stdhpp\istream, ostream, streambuf, xloctime, yvals.h
  1108. libw32\include\istream, ostream, streambuf, xloctime, yvals.h
  1109. Enable new breaking CRT changes that have been waiting for next LKG
  1110. update under _CRT_NEW_STL_DROP. This is only going into the nextVCLKG
  1111. branch for now. These edits change the size of some types exported
  1112. from msvcp70.dll, so they can only happen at LKG updates.
  1113. -----------------------------------------------------------------
  1114. Mon 05-Feb-01 (PhilipLu)
  1115. crtw32\h\stdarg.h
  1116. libw32\include\stdarg.h
  1117. libw32\inc64\stdarg.h
  1118. VS7#201535 Fix va_start(ap,v) for C++, where it is incorrect to use &v,
  1119. since v may be an instance of a class that defines an operator&.
  1120. -----------------------------------------------------------------
  1121. Thu 18-Jan-01 (PhilipLu)
  1122. libw32\inc64\xlocale, xstring
  1123. Forgot to update the relinc headers for the previous checkin.
  1124. -----------------------------------------------------------------
  1125. Tue 16-Jan-01 (PhilipLu)
  1126. crtw32\stdcpp64\strstrea.cpp
  1127. crtw32\stdhpp64\xlocale, xstring
  1128. IA64 Sys CRT buildfix. Add casts to shut up new frontend warning, same as
  1129. was done for the IA64 VC CRT on Friday.
  1130. -----------------------------------------------------------------
  1131. Fri 12-Jan-01 (PhilipLu)
  1132. crtw32\tools\win32\newline.sed
  1133. Tweak sed script so it works for sed V1.08 used on x86 and V2.05 used on
  1134. IA64.
  1135. crtw32\stdcpp\strstrea.cpp
  1136. IA64 rolling build fix. Add (int) cast to shut up new frontend warning.
  1137. -----------------------------------------------------------------
  1138. Thu 04-Jan-01 (GautamB)
  1139. crtw32\h\stdlib.h
  1140. crtw32\misc\rotl.h, rotr.h, abs.h
  1141. makefile.inc
  1142. Added 64 bit intrinsics _abs64, _rtol64, _rotr64 etc. also added
  1143. __byte_swap intrinsic functions.
  1144. libw32\msvcrt.rc, msvcirt.rc, msvcprt.rc, msvcrt40.rc, syscrt.rc, sysirt.rc,
  1145. sysprt.rc, syscrt64.rc, sysirt64.rc, sysprt64.rc
  1146. Copyright changes to match the product.
  1147. -----------------------------------------------------------------
  1148. Thu 15-Dec-00 (PhilipLu)
  1149. <<< 212 files not worth listing individually >>>
  1150. Copyright update part 3. Update P.J. Plauger's copyrights to 2001,
  1151. with his approval.
  1152. -----------------------------------------------------------------
  1153. Mon 11-Dec-00 (PhilipLu)
  1154. crtw32\h\stdio.h
  1155. crtw32\stdio\tempnam.c
  1156. libw32\include\stdio.h
  1157. libw32\inc64\stdio.h
  1158. VS7#5416 Fix comments about L_tmpnam in stdio.h, and fix double-free
  1159. bug in _tempnam() I noticed while investigating this bug.
  1160. crtw32\h\crtdbg.h
  1161. libw32\include\crtdbg.h
  1162. libw32\inc64\crtdbg.h
  1163. VS7#166572 The non-_DEBUG macro definitions of _CrtSetReportHook,
  1164. _CrtSetReportFile, _CrtSetAllocHook, and _CrtSetDumpClient should be
  1165. typed the same as the _DEBUG function definitions.
  1166. crtw32\h\tchar.h
  1167. libw32\include\tchar.h
  1168. libw32\inc64\tchar.h
  1169. VS7#180102 Fix _strnextc for chars >= 0x80.
  1170. crtw32\h\cmacros.inc
  1171. crtw32\tools\fixcopyright.pl [NEW]
  1172. fpw32\conv\cfout.c, constpow.c, cvt.c
  1173. fpw32\inc\i386\cmacros.inc, elem87.inc, mathmac.inc, os2supp.inc
  1174. fpw32\tran\bessel.c, hypot.c
  1175. fpw32\tran\i386\87cdisp.asm, 87csqrt.asm, 87ctran.asm, 87ctrig.asm,
  1176. 87ctriga.asm, 87ctrigh.asm, 87disp.asm, 87fmod.asm, 87sqrt.asm, 87tran.asm,
  1177. 87trig.asm, 87triga.asm, 87trigh.asm, acos.asm, adj_fdiv.asm, asin.asm,
  1178. atan.asm, common.asm, cos.asm, fpctrl.c, frnd.c, ftol.asm, ieee.c,
  1179. ieee87.c, ldsplit.asm, log.asm, log10.asm, pow.asm, sin.asm, sqrt.asm,
  1180. tan.asm, trig.asm, triga.asm, xmmi_types.h
  1181. fpw32\tran\ia64\fpctrl.c, ieee.c
  1182. libw32\msvcrt40.rc
  1183. Copyright update part 1. In preparation for updating copyright text
  1184. from 2000 to 2001, check in a perl script which updates the copyrights
  1185. and outputs warnings for files where the copyright does not have the
  1186. proper form. Fix all those warnings, so the script runs warning-clean.
  1187. <<< 1,218 files not worth listing individually >>>
  1188. Copyright update part 2. Update copyrights to run up to 2001.
  1189. -----------------------------------------------------------------
  1190. Sun 10-Dec-00 (PhilipLu)
  1191. crtw32\dllstuff\crtexe.c
  1192. crtw32\startup\crt0.c
  1193. VS7#167293 Tighten up the check for a managed EXE in case it ever
  1194. sees a PE+ on x86 or PE on IA64, or an image without a COM Descriptor
  1195. directory entry.
  1196. crtw32\h\stdio.h
  1197. libw32\include\stdio.h
  1198. libw32\inc64\stdio.h
  1199. VS7#122990 Define _FPOSOFF for _POSIX_ so C++ I/O Streams can be
  1200. compiled.
  1201. -----------------------------------------------------------------
  1202. Fri 08-Dec-00 (PhilipLu)
  1203. crtw32\stdhpp\yvals.h
  1204. libw32\include\yvals.h
  1205. Turn off _GLOBAL_USING temporarily. Turning it on back on Wednesday,
  1206. to wrap the C library in namespace std has triggered bugs in the C++
  1207. compiler frontend (VS7#190308, 190674). This will be reenabled once
  1208. the frontend is fixed.
  1209. crtw32\h\malloc.h
  1210. libw32\include\malloc.h
  1211. libw32\inc64\malloc.h
  1212. Fix the _POSIX_ (NT) build by moving prototype for _resetstkoflw out
  1213. from under #ifndef _POSIX_.
  1214. -----------------------------------------------------------------
  1215. Thu 07-Dec-00 (PhilipLu)
  1216. crtw32\stdcpp\xgetwctype.c
  1217. Fix the 64-bit VC CRT build (missing cast from size_t -> int).
  1218. -----------------------------------------------------------------
  1219. Wed 06-Dec-00 (PhilipLu)
  1220. makefile.inc
  1221. crtw32\stdcpp\lsources, sources.nt, xdateord.cpp, xgetwctype.c, xmath.h,
  1222. xtowlower.c, xtowupper.c
  1223. crtw32\stdhpp\algorithm, fstream, ios, iosfwd, memory, sstream, utility,
  1224. vector, xcomplex, xhash, xlocinfo, xlocinfo.h, xloctime, xmemory, xutility,
  1225. yvals.h
  1226. libw32\include\algorithm, fstream, ios, iosfwd, memory, sstream, utility,
  1227. vector, xcomplex, xhash, xlocinfo, xlocinfo.h, xloctime, xmath.h, xmemory,
  1228. xutility, yvals.h
  1229. libw32\msvcrt.src, syscrt.src, syscrt64.src
  1230. Integrate the 001118 drop of the Dinkumware C++ Library. Fixes bugs
  1231. VS7#149387, 155323, and 182248. Also contains a fix for VS7#161213,
  1232. but that can't be turned on until an LKG update. Also contains a start
  1233. on the fixes for VS7#150517 and 157130.
  1234. Also turning on _GLOBAL_USING in yvals.h, so VS7#5292 is finally fixed,
  1235. with the C library properly wrapped in the std namespace. This can be
  1236. done now that the Beta 1 C++ compiler has been promoted to the LKG
  1237. toolset.
  1238. crtw32\stdcpp\cerr.cpp, cin.cpp, clog.cpp, cout.cpp, delaop2.cpp, delop2.cpp,
  1239. fiopen.cpp, instances.cpp, iomanip.cpp, ios.cpp, iosptrs.cpp, iostream.cpp,
  1240. locale.cpp, locale0.cpp, newaop.cpp, newaop2.cpp, newop2.cpp, nomemory.cpp,
  1241. nothrow.cpp, raisehan.cpp, stdhndlr.cpp, stdthrow.cpp, string.cpp,
  1242. strstrea.cpp, uncaught.cpp, wcerr.cpp, wcin.cpp, wclog.cpp, wcout.cpp,
  1243. wctrans.c, wctype.c, wiostrea.cpp, wlocale.cpp, xcosh.c, xdnorm.c,
  1244. xdscale.c, xdtest.c, xexp.c, xfcosh.c, xfdnorm.c, xfdscale.c, xfdtest.c,
  1245. xferaise.c, xfexp.c, xfsinh.c, xfvalues.c, xlcosh.c, xldnorm.c, xldscale.c,
  1246. xldtest.c, xlexp.c, xlocale.cpp, xlock.cpp, xlpoly.c, xlsinh.c, xlvalues.c,
  1247. xmtx.c, xmtx.h, xmutex.cpp, xpoly.c, xsinh.c, xstod.c, xvalues.c
  1248. crtw32\stdhpp\bitset, cassert, cctype, cerrno, cfloat, ciso646, climits,
  1249. clocale, cmath, complex, csetjmp, csignal, cstdarg, cstddef, cstdio,
  1250. cstdlib, cstring, ctime, cwchar, cwctype, deque, exception, functional,
  1251. hash_map, hash_set, iomanip, iostream, iso646.h, istream, iterator, limits,
  1252. list, locale, map, new, numeric, ostream, queue, set, stack, stdexcept,
  1253. stl.h, streambuf, string, strstream, valarray, xiosbase, xlocale, xlocmes,
  1254. xlocmon, xlocnum, xstddef, xstring, xtree, ymath.h
  1255. libw32\include\bitset, cassert, cctype, cerrno, cfloat, ciso646, climits,
  1256. clocale, cmath, complex, csetjmp, csignal, cstdarg, cstddef, cstdio,
  1257. cstdlib, cstring, ctime, cwchar, cwctype, deque, exception, functional,
  1258. hash_map, hash_set, iomanip, iostream, iso646.h, istream, iterator, limits,
  1259. list, locale, map, new, numeric, ostream, queue, set, stack, stdexcept,
  1260. stl.h, streambuf, string, strstream, valarray, xiosbase, xlocale, xlocmes,
  1261. xlocmon, xlocnum, xstddef, xstring, xtree, ymath.h
  1262. Dinkumware files unchanged by the 001118 drop except for a change in
  1263. the version comment from V3.06:0009 to V3.09:0009
  1264. -----------------------------------------------------------------
  1265. Tue 05-Dec-00 (PhilipLu)
  1266. doc\copysrc.bat
  1267. srcrel\external.mkf, nmktobat.c, pd-b
  1268. [RENAME]
  1269. srcrel\bldwin95.bat -> srcrel\bldwin9x.bat
  1270. VS7#178683 Rename bldwin95.bat to bldwin9x.bat, since VS won't be
  1271. supporting Win95 any longer. Also renamed some references to Win95
  1272. to Win9x instead.
  1273. srcrel\makefile
  1274. Minor cleanup - hide the rule to create srcrel\pd-b under !if 0.
  1275. This file is always hand-edited nowadays, not generated, and it
  1276. was getting overwritten whenever the timestamp for pd-exe was newer
  1277. than that for pd-b (as in a newly enlisted project with pd-b then
  1278. copied from elsewhere).
  1279. crtw32\h\wchar.h
  1280. libw32\include\wchar.h
  1281. libw32\inc64\wchar.h
  1282. VS7#186936 The inline definition of mbsinit() in wchar.h was a
  1283. stub that just returned 1. Changed that to the proper definition,
  1284. which is just a simple (p == NULL || *p == 0).
  1285. -----------------------------------------------------------------
  1286. Mon 04-Dec-00 (PhilipLu)
  1287. [NEW]
  1288. crtw32\stdcpp\xdateord.cpp, xgetwctype.c, xtowlower.c, xtowupper.c
  1289. doc\copysrc.bat
  1290. srcrel\pd-b
  1291. Check in dummy placeholders for new files that will be required for
  1292. the next Dinkumware integration. This is to meet a 12/8/00 deadline
  1293. for entering new files into FLDB for the VS7 setup.
  1294. -----------------------------------------------------------------
  1295. Wed 29-Nov-00 (Gautamb)
  1296. Delete
  1297. crtw32\mbstring\i386\mbscat.asm
  1298. crtw32\mbstring\mbscat.c mbsdup.c
  1299. Edit
  1300. makefile
  1301. makefile.inc
  1302. doc\copysrc.bat
  1303. srcrel\external.mkf objects.mkf pd-b
  1304. crtw32\string\stricmp.c stricoll.c
  1305. crtw32\mbstring\sources.nt lsources
  1306. libw32\msvcrt.src syscrt.src syscrt64.src
  1307. VS7#100359 Added an alias lib for duplicate functions with same code.
  1308. -----------------------------------------------------------------
  1309. Tue 28-Nov-00 (Gautamb)
  1310. crtw32\stdio\input.c
  1311. VS7#162114, 167304. Bug fix for use of uninitialized variable and for
  1312. wscanf crashing due to low stack.
  1313. -----------------------------------------------------------------
  1314. Mon 27-Nov-00 (PhilipLu)
  1315. crtw32\stdhpp\istream, xlocale, xlocnum, xstring
  1316. libw32\include\istream, xlocale, xlocnum, xstring
  1317. Buildfix for IA64 VC CRT. Add casts to silence warnings about 64 bit
  1318. to 32 bit truncations.
  1319. fpw32\tran\ia64\acos.s, acosf.s, asin.s, asinf.s
  1320. VS7#186484 LIBM v5.4 turned off exceptions on errors in acos, acosf,
  1321. asin, and asinf. Turn the exceptions back on.
  1322. fpw32\tran\lsources, sources.nt
  1323. srcrel\pd-b
  1324. [DELETED:]
  1325. fpw32\tran\ia64\em_types.h, emfloat.s, remainder.s, remainderf.s, scalb.s,
  1326. scalbf.s
  1327. Get rid of more IA64 LIBM files that are unneeded. Files em_types.h
  1328. and emfloat.s are old _fpieee_flt support files that are no longer
  1329. needed. The remainder and scalb files are for LIBM v5.4 code that we
  1330. don't have on the x86 side and thus don't currently want for IA64.
  1331. fpw32\tran\ia64\isnan.s, isnanf.s, logb.s, logbf.s
  1332. fpw32\tran\ieeemisc.c
  1333. Get the implementations of _isnan and _logb from the IA64 LIBM asm
  1334. code instead of ieeemisc.c. Add an underscore prefix to the routine
  1335. names in the LIBM .s files, since that's what we document and declare
  1336. in the headers.
  1337. -----------------------------------------------------------------
  1338. Fri 24-Nov-00 (PhilipLu)
  1339. crtw32\h\conio.h, stdio.h, wchar.h
  1340. crtw32\lowio\putwch.c
  1341. crtw32\stdio\fputwc.c, fputwchr.c, output.c
  1342. libw32\include\conio.h, stdio.h, wchar.h
  1343. libw32\inc64\conio.h, stdio.h, wchar.h
  1344. VS7#176345 putwchar appeared twice in wchar.h, once with a wint_t arg,
  1345. once with wchar_t, leading to errors when compiling /Zc:wchar_t. On
  1346. examination, it turns out that several functions were wrongly declared
  1347. with wint_t args: fputwc, _fputwchar, putwc, putwchar, and _putwch.
  1348. Switch all of them to take a wchar_t arg instead.
  1349. -----------------------------------------------------------------
  1350. Wed 22-Nov-00 (PhilipLu)
  1351. clean.cmd, cleanbld.cmd, makefile
  1352. srcrel\clnsrcrel.bat, external.mkf, makefile, mkclnmkf.c, objects.mkf, pd-b
  1353. Checking in changes to enable a native IA64-hosted CRT build.
  1354. Currently, you still need to specify LLP64=1 in the environment.
  1355. fpw32\tran\sources.nt
  1356. fpw32\tran\ia64\acos.s, acosf.s, asin.s, asinf.s, atan.s, atan2.s, atan2f.s,
  1357. atanf.s, ceil.s, ceilf.s, cosh.s, coshf.s, exp.s, expf.s, floor.s,
  1358. floorf.s, fmod.s, fmodf.s, hypot.s, hypotf.s, ldexp.s, ldexpf.s,
  1359. libm_atan2_reg.s, libm_error.c, libm_reduce.s, libm_tan.s, log.s, logb.s,
  1360. logbf.s, logf.s, pow.s, powf.s, remainder.s, remainderf.s, scalb.s,
  1361. scalbf.s, sincos.s, sincosf.s, sinh.s, sinhf.s, sqrt.s, sqrtf.s, tan.s,
  1362. tanf.s
  1363. srcrel\pd-b
  1364. [DELETED:]
  1365. fpw32\tran\ia64\asincosf.c, atan2f.c, atanf.c, ceilf.c, expf.c, fabsf.c,
  1366. floorf.c, fmodf.c, fp80.s, fp80c.c, log10f.c, logf.c, powf.c, sincosf.c,
  1367. sincoshf.c, sqrtf.c, tanf.c
  1368. Update to IA64 LIBM v5.4 108 from Intel, dated 09/21. Also get rid of
  1369. a bunch of tran\ia64\*.c files which should have been removed when we
  1370. first switched from the C-based to asm-based LIBM.
  1371. -----------------------------------------------------------------
  1372. Mon 20-Nov-00 (PhilipLu)
  1373. crtw32\h\setjmp.h
  1374. crtw32\misc\ia64\longjmp.s, setjmp.s, setjmpex.s
  1375. libw32\include\setjmp.h
  1376. libw32\inc64\setjmp.h
  1377. Back out VS7#182574, so IA64 setjmp/longjmp once again will save/restore
  1378. the FPSR. NT rethought its decision on this.
  1379. [Added:]
  1380. libw32\tools\ia64\aliasobj.exe, detab.exe, ifstrip.exe, pd.exe, striphdr.exe,
  1381. tolwrupr.exe, trailing.exe, whackline.exe
  1382. Add IA64 versions of tools needed for a native-hosted IA64 CRT build.
  1383. -----------------------------------------------------------------
  1384. Fri 17-Nov-00 (PhilipLu)
  1385. crtw32\misc\ia64\longjmp.s
  1386. VS7#184669 The IA64 setjmp/longjmp change made on Monday for vs7#182574
  1387. can crash the OS and cause an immediate reboot without hitting the BSOD
  1388. when using _setjmpex for safe longjmps. That's because a safe longjmp
  1389. uses RtlUnwind2 to unwind and restore state back to the setjmp point,
  1390. and the code in RtlUnwind2 still assumes that the jmp_buf holds a valid
  1391. saved FPSR. Apparently, a bogus FPSR is enough to bring the machine
  1392. down!
  1393. Fixed by changing longjmp to save the ambient FPSR in the jmp_buf just
  1394. before calling RtlUnwind2 in the safe longjmp path.
  1395. -----------------------------------------------------------------
  1396. Mon 13-Nov-00 (PhilipLu)
  1397. fpw32\tran\lsources, sources.nt
  1398. fpw32\tran\ia64\modf.s, modff.s
  1399. srcrel\pd-b
  1400. VS7#180200 modff is declared in math.h but wasn't available. Rather than
  1401. add an inline modff in math.h (which was removed for VS7#2515), I'm instead
  1402. adding the Intel IA64 libm modf.s and modff.s. There are a number of libm
  1403. routines which we don't make available, but for now, I'm just going to fix
  1404. this particular pair.
  1405. crtw32\h\setjmp.h
  1406. crtw32\misc\ia64\longjmp.s, setjmp.s, setjmpex.s
  1407. libw32\include\setjmp.h
  1408. libw32\inc64\setjmp.h
  1409. VS7#182574 Setjmp/longjmp on IA64 should not save/restore the FPSR any
  1410. longer. That maintains compatibility with the other platforms. Also,
  1411. rename unused fields in the IA64 _JUMP_BUFFER to Reserved[12].
  1412. crtw32\stdhpp64\fstream, streambuf, xiosbase
  1413. libw32\inc64\fstream, streambuf, xiosbase
  1414. VS7#181246 Clean up some /Wp64 warnings in the old stdhpp64 headers for
  1415. NT. Introduce casts to silence the warnings.
  1416. -----------------------------------------------------------------
  1417. Mon 06-Nov-00 (PhilipLu)
  1418. srcrel\pd-b
  1419. Get rid of references to MIPS and PPC files that have already been
  1420. deleted from the source tree.
  1421. crtw32\misc\initnum.c, setlocal.c
  1422. VS7#181380 Fix pageheap-detected use-after-free bugs in LC_MONETARY
  1423. and LC_NUMERIC setlocale data when a thread exits and removes the last
  1424. reference to data which is still pointed to by the global locale. We
  1425. can only free data with a zero refcount if that data is not also in
  1426. the global locale.
  1427. crtw32\convert\atox.c
  1428. Trivial checkin which avoids a warning in the _NTSUBSET_ build of the
  1429. CRT.
  1430. -----------------------------------------------------------------
  1431. Fri 03-Nov-00 (PhilipLu)
  1432. crtw32\stdhpp\xlocnum
  1433. libw32\include\xlocnum
  1434. Bandaid build breakage fix for VS7#170063, which is now appearing in
  1435. the 32-bit /Wp64 build after a recent compiler change. We're warning
  1436. on a cast from unsigned long to void *, since that's not /Wp64 clean.
  1437. Change it to 'ptr = (void*)(uintptr_t)ulval;' to silence the warning.
  1438. This doesn't fix the bug, though - the code should be using unsigned
  1439. __int64 on Win64. Leave that for later.
  1440. -----------------------------------------------------------------
  1441. Wed 25-Oct-00 (PhilipLu)
  1442. crtw32\string\ia64\memcpy.s
  1443. VS7#178057 Remove superfluous reference to exit(), which triggers undesired
  1444. dependency on other CRT functions.
  1445. -----------------------------------------------------------------
  1446. Mon 23-Oct-00 (PhilipLu)
  1447. crtw32\string\ia64\strcmp.s
  1448. VS7#176998 IA64 strcmp should compare unsigned chars, not signed, for
  1449. compatibility with x86. Also for x86 compatibility, canonicalize the
  1450. result to be -1, 0, +1 instead of just <0, 0, >0.
  1451. -----------------------------------------------------------------
  1452. Sun 22-Oct-00 (PhilipLu)
  1453. srcrel\pd-b
  1454. [Deleted:]
  1455. crtw32\crt.mkf, infer.mkf, oldnames.mkf
  1456. crtw32\convert\convert.mkf
  1457. crtw32\dos\dos.mkf
  1458. crtw32\eh\eh.mkf
  1459. crtw32\exec\exec.mkf
  1460. crtw32\heap\heap.mkf
  1461. crtw32\iostream\iostream.mkf
  1462. crtw32\linkopts\linkopts.mkf
  1463. crtw32\lowio\lowio.mkf
  1464. crtw32\mbstring\mbstring.mkf
  1465. crtw32\misc\misc.mkf
  1466. crtw32\startup\startup.mkf
  1467. crtw32\stdio\stdio.mkf
  1468. crtw32\string\string.mkf
  1469. crtw32\time\time.mkf
  1470. fpw32\fp.mkf, infer.mkf
  1471. fpw32\conv\conv.mkf
  1472. fpw32\tran\tran.mkf
  1473. libw32\buildall.cmd, makefile
  1474. Build system cleanup - get rid of old make files that haven't been used
  1475. in years.
  1476. -----------------------------------------------------------------
  1477. Thu 19-Oct-00 (PhilipLu)
  1478. crtw32\lowio\ioinit.c
  1479. VS7#176001 Avoid alignment fault when mixing printf and wprintf to stdout
  1480. when stdout not available in a GUI or server app, by forcing __badioinfo
  1481. to text mode.
  1482. -----------------------------------------------------------------
  1483. Tue 17-Oct-00 (PhilipLu)
  1484. crtw32\lowio\pipe.c
  1485. VS7#173087 Remove potential deadlock on race condition in _alloc_osfhnd
  1486. called from _pipe. Do not call _alloc_osfhnd a second time without first
  1487. unlocking the _ioinfo returned by the first call. Also, don't initialize
  1488. the returned handle values until we know the operation succeeded.
  1489. -----------------------------------------------------------------
  1490. Mon 16-Oct-00 (PhilipLu)
  1491. crtw32\string\lsources
  1492. crtw32\string\ia64\memcpy.s, memset.s, strcat.s, strcmp.s, strlen.s
  1493. srcrel\objects.mkf, pd-b
  1494. makefile.inc
  1495. VS7#173518 Pick up optimized IA64 mem/str routines from Intel. These
  1496. asm routines get built in the pre-build and copied over to the post-build.
  1497. -----------------------------------------------------------------
  1498. Thu 12-Oct-00 (PhilipLu)
  1499. crtw32\misc\initmon.c, initnum.c
  1500. VS7#169596 Don't call fix_grouping when initializing monetary locale info
  1501. if any error is detected, since the mon_grouping member may not be valid.
  1502. -----------------------------------------------------------------
  1503. Thu 12-Oct-00 (GautamB)
  1504. crtw32\string\wcsxfrm.c
  1505. VS7#164393, changed wcsxfrm.c to be similar to strxfrm.c which fixes the
  1506. bug.
  1507. crtw32\misc\setlocale.c
  1508. VS7#159775, changed setlocale_set_cat to return if this locale is same as
  1509. current locale for the same category.
  1510. crtw32\convert\wtof.c
  1511. VS7#166022, Fixed buffer overrun.
  1512. crtw32\h\useoldio.h
  1513. VS7#172378, added comments for the _OLD_IOSTREAMS_ARE_DEPRECATED
  1514. -----------------------------------------------------------------
  1515. Wed 11-Oct-00 (PhilipLu)
  1516. crtw32\string\lsources
  1517. srcrel\objects.mkf, pd-b
  1518. makefile.inc
  1519. VS7#101018 Fix IA64 build so memcpy.c and memset.c are built. Since early
  1520. August, the IA64 build has been importing memcpy and memset from kernel32
  1521. instead of including them from the CRT sources. For now, don't use the
  1522. IA64 asm routines under crtw32\string\ia64.
  1523. crtw32\h\tchar.h
  1524. libw32\include\tchar.h
  1525. libw32\inc64\tchar.h
  1526. VS7#166192 Add missing _MBCS mapping for _tcserror.
  1527. -----------------------------------------------------------------
  1528. Wed 27-Sep-00 (PhilipLu)
  1529. makefile, makefile.inc, makefile.sub
  1530. Get rid of references to dead platforms MIPS and PPC. Hide references
  1531. to ALPHA and ALPHA64 platforms so they get stripped out of released
  1532. versions of makefiles.
  1533. crtw32\convert\strtoq.c
  1534. crtw32\heap\align.c
  1535. crtw32\stdcpp64\xmbtowc.c
  1536. Fix format of file header comments so revision history is properly
  1537. cleansed by build process.
  1538. srcrel\makefile
  1539. Need to cleanse several files from stdcpp/stdcpp64 instead of just copying
  1540. them, so the revision history is removed.
  1541. -----------------------------------------------------------------
  1542. Tue 26-Sep-00 (GautamB)
  1543. crtw32\lowio\putch.c
  1544. libw32\msvcrt.rc, msvcprt.rc, msvcirt.rc, syscrt.rc, sysprt.rc, sysiprt.rc,
  1545. syscrt64.rc, sysprt64.src, sysirt64.rc, msvcrt40.rc
  1546. srcrel\_sample_.rc
  1547. crtw32\misc\winsig.c, winxfltr.c
  1548. crtw32\direct\seterrm,c
  1549. crtw32\string\memcpy.c, memmove.c, i386\memcpy.asm
  1550. VS7#116063 Changed the copyright info.
  1551. -----------------------------------------------------------------
  1552. Tue 26-Sep-00 (PhilipLu)
  1553. crtw32\h\crtdbg.h
  1554. libw32\include\crtdbg.h
  1555. libw32\inc64\crtdbg.h
  1556. VS7#166894 Fix _ASSERT* and _RPT* macros so they compile /W4-clean.
  1557. Replaced the do{...}while(0) construct with an expression-form instead,
  1558. much like the one used by assert.h. This only works when _CrtDebugBreak()
  1559. is a function call, so the old form is still used when compiling with
  1560. pre-VC7 x86 compilers, where _CrtDebugBreak turns into inline asm.
  1561. libw32\msvcrt.src, syscrt.src, syscrt64.src
  1562. VS7#45611 Export _control87 from the IA64 CRT DLL, since it's already
  1563. available for IA64 in the static models. Not sure it makes sense to have
  1564. _control87 instead of _controlfp for IA64, but this makes it easier to port
  1565. existing code over.
  1566. crtw32\startup\ia64\chkstk.s
  1567. VS7#156660 Get rid of the version of _chkstk that uses B6 as the link reg.
  1568. Only the B7 version should be available.
  1569. crtw32\eh\ia64\handlers.s
  1570. crtw32\startup\ia64\chkstk.s
  1571. VS7#166899 Use Soft2.6 unwind info (version 3) instead of the old version 2
  1572. info that was there. Also, stop hardcoding the unwind info, and use the
  1573. IAS directives that generate the table automatically.
  1574. -----------------------------------------------------------------
  1575. Mon 25-Sep-00 (PhilipLu)
  1576. makefile.inc
  1577. srcrel\object.mkf
  1578. Add undname.obj to the list of object files no longer needed for the
  1579. user CRT rebuild.
  1580. makefile
  1581. Change the default value of VCTOOLS during the user CRT rebuild from
  1582. \Program Files\Microsoft Visual Studio 7\Vc7 to
  1583. \Program Files\Microsoft Visual Studio.NET\Vc7
  1584. -----------------------------------------------------------------
  1585. Mon 25-Sep-00 (PhilipLu)
  1586. makefile
  1587. VS7#160801 Standalone version of the RTC support, runtmchk.lib, was not
  1588. being built. Drop the release DLL prebuild rtc.lib as runtmchk.lib, since
  1589. that version is built /Z7 with no dependency on any CRT pdbs.
  1590. makefile, makefile.inc
  1591. libw32\msvcrt.src, syscrt.src, syscrt64.src
  1592. srcrel\objects.mkf
  1593. Replace 184 object files in the crt\src\{platform}\*_lib dirs with two
  1594. libs, eh.lib and rtc.lib, in each of the 6 CRT models. The build was
  1595. needlessly copying all the components in eh.lib and rtc.lib over from
  1596. the prebuild to the postbuild, and then dropping them out for the
  1597. user CRT rebuild. Instead, just copy those two libs from the prebuild,
  1598. for a net reduction of 172 files that get shipped.
  1599. makefile
  1600. fpw32\tran\lsources
  1601. srcrel\pd-b
  1602. Get rid of all warnings from IA64 build. Tcmap build was using mbslen.obj
  1603. twice instead of mbslen.obj and mbslen.obf. Tran lsources specified
  1604. ldexp.obj and tanh.obj twice each. Pd-b specified tanhf.c twice.
  1605. -----------------------------------------------------------------
  1606. Thu 21-Sep-00 (PhilipLu)
  1607. crtw32\misc\seccinit.c
  1608. VS7#165188 The /GS security cookie initialization was too non-random.
  1609. We now combine a number of sources of randomness, especially the high
  1610. frequency counter returned by QueryPerformanceCounter.
  1611. crtw32\stdhpp\list, xtree
  1612. libw32\include\list, xtree
  1613. VS7#5312 The node pointers in std::list and std::_Tree no longer need to
  1614. be typed void*, since the compiler properly delays instantiating template
  1615. class members until they are used, allowing us to implicitly instantiate
  1616. std::allocator on an incomplete type. The pointers are now typed with the
  1617. actual type, allowing full dumping of lists and trees in the debugger.
  1618. crtw32\h\stdarg.h
  1619. libw32\include\stdarg.h
  1620. libw32\inc64\stdarg.h
  1621. VS7#103357 The IA64 definition of va_start for C++ needed changes
  1622. coordinated with the backend and frontend.
  1623. -----------------------------------------------------------------
  1624. Mon 18-Sep-00 (PhilipLu)
  1625. crtw32\stdcpp\xlock.cpp
  1626. crtw32\stdhpp\istream, ostream, streambuf, yvals.h
  1627. libw32\include\istream, ostream, streambuf, yvals.h
  1628. VS7#163945 The 09/15/00 Dinkumware checkin fails to maintain compatibility
  1629. between old libs/headers and the new dll. The problem is the introduction
  1630. of multiple locks, especially the per-stream locks. That caused everything
  1631. in the ostream, istream, and streambuf heirarchies to get larger. Changing
  1632. the sizes of types exported from the C++ DLL can only happen at LKG toolset
  1633. updates, since that is a rebuild-everything kind of change.
  1634. Backed out the multiple locks. Everything now uses a single lock, as it
  1635. did before Friday's checkin. The new code is still there, under
  1636. #if _CRT_STL_NEW_DROP, ready to be reenabled at the next LKG update.
  1637. crtw32\tools\win32\relinc.if
  1638. libw32\include\cctype, cerrno, clocale, cmath, csetjmp, csignal, cstdarg,
  1639. cstddef, cstdio, cstdlib, cstring, ctime, cwchar, cwctype
  1640. Friday's drop did not turn on _GLOBAL_USING, as I stated below. All the
  1641. wrapping of C functions in the std namespace was being stripped out of
  1642. the headers by relinc. Stop stripping it out, but turn _GLOBAL_USING off
  1643. for now, until a compiler bug I found, vs7#163702, gets fixed.
  1644. -----------------------------------------------------------------
  1645. Sun 17-Sep-00 (PhilipLu)
  1646. crtw32\misc\crtmbox.c
  1647. VS7#123291 __crtMessageBoxA needs to set MB_SERVICE_NOTIFICATION on WinNT
  1648. in non-interactive processes like services, so the message box is visible
  1649. on the console (and the program doesn't hang).
  1650. crtw32\misc\seccinit.c, seccook.c
  1651. VS7#162619 Initialization of the /GS buffer overrun global security must
  1652. happen earlier. Also, make sure the cookie is never zero, so a buffer
  1653. overrun setting the local cookie and return address to the same value
  1654. will always be detected.
  1655. -----------------------------------------------------------------
  1656. Fri 15-Sep-00 (GautamB)
  1657. crtw32\stdio\sscanf.c swscanf.c lsources snscanf.c snwscanf.c
  1658. crtw32\h\stdio.h wchar.h tchar.h
  1659. srcrel\pd-b
  1660. libw32\msvcrt.src, syscrt.src, sys64crt.src
  1661. VS7#103628 Added new functions _snscanf and _snwscanf
  1662. -----------------------------------------------------------------
  1663. Fri 15-Sep-00 (PhilipLu)
  1664. makefile.inc
  1665. crtw32\stdcpp\cerr.cpp, cin.cpp, clog.cpp, cout.cpp, delaop2.cpp, delop2.cpp,
  1666. fiopen.cpp, instances.cpp, iomanip.cpp, ios.cpp, iosptrs.cpp, iostream.cpp,
  1667. locale.cpp, locale0.cpp, lsources, newaop.cpp, newaop2.cpp, newop2.cpp,
  1668. nomemory.cpp, nothrow.cpp, raisehan.cpp, sources.nt, stdhndlr.cpp,
  1669. stdthrow.cpp, string.cpp, strstrea.cpp, uncaught.cpp, wcerr.cpp, wcin.cpp,
  1670. wclog.cpp, wcout.cpp, wctrans.c, wctype.c, wiostrea.cpp, wlocale.cpp,
  1671. xcosh.c, xdnorm.c, xdscale.c, xdtest.c, xexp.c, xfcosh.c, xfdnorm.c,
  1672. xfdscale.c, xfdtest.c, xferaise.c, xfexp.c, xfsinh.c, xfvalues.c, xlcosh.c,
  1673. xldnorm.c, xldscale.c, xldtest.c, xlexp.c, xlocale.cpp, xlock.cpp,
  1674. xlpoly.c, xlsinh.c, xlvalues.c, xmath.h, xmtx.c [NEW], xmtx.h [NEW],
  1675. xmutex.cpp [NEW], xpoly.c, xsinh.c, xstod.c, xvalues.c
  1676. crtw32\stdhpp\algorithm, bitset, cassert, cctype, cerrno, cfloat, ciso646,
  1677. climits, clocale, cmath, complex, csetjmp, csignal, cstdarg, cstddef,
  1678. cstdio, cstdlib, cstring, ctime, cwchar, cwctype, deque, exception,
  1679. fstream, functional, hash_map, hash_set, iomanip, ios, iosfwd, iostream,
  1680. iso646.h, istream, iterator, limits, list, locale, map, memory, new,
  1681. numeric, ostream, queue, set, sstream, stack, stdexcept, stl.h, streambuf,
  1682. string, strstream, utility, valarray, vector, xcomplex, xhash, xiosbase,
  1683. xlocale, xlocinfo, xlocinfo.h, xlocmes, xlocmon, xlocnum, xloctime,
  1684. xmemory, xstddef, xstring, xtree, xutility, ymath.h, yvals.h
  1685. doc\copysrc.bat
  1686. libw32\include\algorithm, bitset, cassert, cctype, cerrno, cfloat, ciso646,
  1687. climits, clocale, cmath, complex, csetjmp, csignal, cstdarg, cstddef,
  1688. cstdio, cstdlib, cstring, ctime, cwchar, cwctype, deque, exception,
  1689. fstream, functional, hash_map, hash_set, iomanip, ios, iosfwd, iostream,
  1690. iso646.h, istream, iterator, limits, list, locale, map, memory, new,
  1691. numeric, ostream, queue, set, sstream, stack, stdexcept, stl.h, streambuf,
  1692. string, strstream, utility, valarray, vector, xcomplex, xhash, xiosbase,
  1693. xlocale, xlocinfo, xlocinfo.h, xlocmes, xlocmon, xlocnum, xloctime,
  1694. xmath.h, xmemory, xstddef, xstring, xtree, xutility, ymath.h, yvals.h
  1695. srcrel\pd-b
  1696. Integrate the 000718 drop of Dinkumware C++ Library. It implements a more
  1697. graceful locking mechanism. Instead of a single critical section for all
  1698. the C++ Library use, there are now individual locks for each I/O stream,
  1699. as well as separate locks for locale and global stream data structures.
  1700. I'm also turning on _GLOBAL_USING, so the C headers are properly wrapped
  1701. in the std namespace. This can be done now that compiler bugs preventing
  1702. this have been fixed. This fixes VS7#5292.
  1703. -----------------------------------------------------------------
  1704. Thu 07-Sep-00 (PhilipLu)
  1705. crtw32\h\wchar.h
  1706. crtw32\stdhpp\wctype.h
  1707. crtw32\stdhpp64\wctype.h
  1708. libw32\include\wchar.h, wctype.h
  1709. libw32\inc64\wchar.h, wctype.h
  1710. More for VS7#147943. Buildfix for IA64 syscrt build, and add _wctype and
  1711. const changes in a few headers missed before.
  1712. -----------------------------------------------------------------
  1713. Thu 07-Sep-00 (PhilipLu)
  1714. crtw32\misc\getqloc.c
  1715. VS7#81673 For geopolitical correctness, refer to "country/region", not
  1716. "country", in a comment. Also, move all the data tables to .rdata.
  1717. crtw32\startup\tlssup.c
  1718. VS7#154062 _tls_start and _tls_end only need to be 1 byte long, not
  1719. sizeof(void*).
  1720. crtw32\eh\rtti.cpp, stdexcpt.cpp, typinfo.cpp, typname.cpp
  1721. crtw32\time\strftime.c
  1722. VS7#159463 Get rid of /lib:libcp{mt}[d] or /lib:msvcprt[d] directives from
  1723. main CRT objects that include stdhpp headers.
  1724. crtw32\h\internal.h, mbstring.h, stdarg.h, stdio.h, wchar.h
  1725. libw32\include\mbstring.h, stdarg.h, stdio.h, wchar.h
  1726. libw32\inc64\mbstring.h, stdarg.h, stdio.h, wchar.h
  1727. VS7#159777 Remove _M_CEE-specific definition of va_list.
  1728. crtw32\startup\crt0dat.c
  1729. Remove obsolete reference to Mac version of CRT.
  1730. crtw32\stdio\ftell.c
  1731. Reindent and reformat file for easier reading.
  1732. -----------------------------------------------------------------
  1733. Thu 07-Sep-00 (GautamB)
  1734. fpw32\tran\ia64\fmod.s, fmodf.s
  1735. VS7#126122. Fixed the problem with matherr getting wrong arguments.
  1736. -----------------------------------------------------------------
  1737. Thu 07-Sep-00 (GautamB)
  1738. crtw32\dllstuff\crtlib.c
  1739. crtw32\h\mtdll.h, setlocal.h, wchar.h, ctype.h
  1740. crtw32\misc\initctype.c, ctype.c, setlocal.c
  1741. crtw32\convert\iswctype.c
  1742. VS7#147943. pwctype was a locale dependent wctype table. Which should not
  1743. ever be local dependent. removed all the wctype and pwctype from thread
  1744. local data, and made wctype as first 256 unicode character type tabel
  1745. -----------------------------------------------------------------
  1746. Wed 06-Sep-00 (GautamB)
  1747. crtw32\startup\stdargv.c
  1748. VS7#147806. there was problem with parsing commandline. e.g.
  1749. "c:\test\"foo.exe would result in two arguments arg0 c:\test\
  1750. and arg1 as foo.exe. fixed
  1751. -----------------------------------------------------------------
  1752. Tue 05-Sep-00 (GautamB)
  1753. fpw32\conv\cfout.c, cvt.c
  1754. crtw32\h\fltintrn.h
  1755. crtw32\convert\fcvt.c, gcvt.c
  1756. VS7#156300. Fixed the problem with printf generating overflow or underflow
  1757. floating point exception when used to print doubles.The problem was
  1758. exposed when doubles like 4.94e-324 were used. This was due to the
  1759. functions being passed double as agrument and instructions like fld would
  1760. generate fp underflow exception.
  1761. -----------------------------------------------------------------
  1762. Tue 29-Aug-00 (PhilipLu)
  1763. crtw32\h\stdlib.h
  1764. crtw32\misc\seccook.c, secfail.c, seclocf.c
  1765. libw32\msvcrt.src, syscrt.src
  1766. libw32\include\stdlib.h
  1767. libw32\inc64\stdlib.h
  1768. Change the /GS support implementation so it can be easily extended in the
  1769. future. The error handler is now called __security_error_handler, and it
  1770. now takes a code for the type of failure (only _SECERR_BUFFER_OVERRUN is
  1771. defined for now) and a void* pointer to an extra data packet (unused for
  1772. now). Also add a documented function for registering a new failure
  1773. handler.
  1774. -----------------------------------------------------------------
  1775. Wed 30-Aug-00 (GautamB)
  1776. fpw32\tran\ia64\filter.c
  1777. VS7#154760 fixed problem with inexact exception thrown by fcvt
  1778. instruction.
  1779. -----------------------------------------------------------------
  1780. Tue 29-Aug-00 (PhilipLu)
  1781. crtw32\eh\rtti.cpp
  1782. VS7#156255 - IA64 bug: dynamic_cast<> and typeid need to use the image base
  1783. for the object's _RTTICompleteObjectLocator, not the return address of the
  1784. call to __RTDynamicCast or __RTtypeid.
  1785. cleanbld.cmd
  1786. Make the DELOBJ option clean the generated .def files, so setting
  1787. BLD_TESTCRT=1 and running a DELOBJ build will work.
  1788. -----------------------------------------------------------------
  1789. Fri 25-Aug-00 (PhilipLu)
  1790. crtw32\stdhpp64\xtree
  1791. libw32\inc64\xtree
  1792. VS7#152018 Propogate fix for VC6SP5 bugfix VS98#66191 to the VC6-based
  1793. 64-bit STL headers. The 10-Jul-00 change to xtree removed too many locks,
  1794. leaving std::_Tree::erase open to a race condition bug that was reported
  1795. by the NT group.
  1796. crtw32\stdhpp64\fstream
  1797. libw32\inc64\fstream
  1798. VS7#155221 Propogate fix for VC6SP6 bugfix VS98#61009. The routine
  1799. std::basic_filebuf::overflow will fail when outputting DBCS, because the
  1800. size and count args to an fwrite call were reversed.
  1801. crtw32\h\dbgint.h
  1802. VS7#153113 On IA64, the debug CRT heap was not returning 16 byte aligned
  1803. memory, even though the Win32 Heap routines do, because the debug preheader
  1804. struct _CrtMemBlockHeader wasn't set up for 64-bits. The struct's size
  1805. wasn't a multiple of 16 bytes, which is needed to maintain alignment.
  1806. Swapping the order of two fields reduced the size from 56 to 48 bytes, and
  1807. eliminated gaps between fields. This was only done for IA64, to avoid
  1808. breaking any x86 client code that looked in this struct (in an
  1809. undocumented manner - this is done by Visual Studio).
  1810. makefile
  1811. The linker no longer supports -debugtype:both, so switch to -debugtype:cv
  1812. for IA64, the same as all the other platforms.
  1813. -----------------------------------------------------------------
  1814. Thu 24-Aug-00 (GautamB)
  1815. crtw32\eh\frame.cpp
  1816. Fixed Problem with BuildCatchObject when called from __CxxExceptionFilter.
  1817. -----------------------------------------------------------------
  1818. Thu 24-Aug-00 (PhilipLu)
  1819. crtw32\eh\rtti.cpp
  1820. VS7#154575 - dynamic_cast<> wasn't thread-safe on IA64.
  1821. -----------------------------------------------------------------
  1822. Wed 24-Aug-00 (KFrei)
  1823. crtw32\rtc\error.cpp
  1824. crtw32\h\rtcapi.h
  1825. libw32\include\rtcapi.h
  1826. VS7#153812, 153067, 154281. Initialization was messed up,
  1827. and _RTC_IsEnabled is dead (so I removed it from the headers)
  1828. -----------------------------------------------------------------
  1829. Wed 23-Aug-00 (GautamB)
  1830. fpw32\tran\ia64\pow.s, atan.s
  1831. VS7#109539. The new drop from intel fixes the problem with pow()
  1832. and atan()
  1833. fpw32\tran\ia64\libm_error.c
  1834. VS7#153477 Removed calls to fputs from libm_error support.
  1835. -----------------------------------------------------------------
  1836. Tue 22-Aug-00 (GautamB)
  1837. crtw32\setlocal.c
  1838. vs7#151944. clike stuff was not working as it should. FIxed it.
  1839. crtw32\dllstuff\crtlib.c
  1840. crtw32\startup\dllcrt0.c
  1841. Fixed possible leak of ptd in _CRT_INIT functions.
  1842. crtw32\string\stricmp
  1843. VS7#100359. strcmpi was just a wrapper function around stricmp. To
  1844. increase performance, selfincluded the file so that strcmpi can use
  1845. the same code again.
  1846. -----------------------------------------------------------------
  1847. Tue 22-Aug-00 (GautamB)
  1848. crtw32\h\awint.h
  1849. crtw32\misc\a_str.c, a_cmp.c, a_map.c, w_cmp.c, w_str.c, w_map.c
  1850. Addfile
  1851. crtw32\misc\convrtcp.c
  1852. VS7#5671. All the crt implementation of Win String APIs did not
  1853. work with any code page other than Ansi code page. Fixed this by
  1854. converting to ansi codepage and then calling WinAPI.
  1855. -----------------------------------------------------------------
  1856. Fri 17-Aug-00 (GautamB)
  1857. crtw32\h\ctype.h
  1858. crtw32\misc\wcstol.c, wchtodig.c
  1859. VS7#152362 Fixed MACRO __ascii_iswalpha and __ascii_iswdigit
  1860. Addfile wchtodig.c which contains new api wchtodig()
  1861. -----------------------------------------------------------------
  1862. Thu 17-Aug-00 (PhilipLu)
  1863. crtw32\stdhpp\xhash
  1864. libw32\include\xhash
  1865. VS7#151623 Relational comparisons for hash_maps were comparing only the
  1866. keys, not the entire pair. Same bug as 97336, this time for hash_map
  1867. instead of map.
  1868. -----------------------------------------------------------------
  1869. Wed 16-Aug-00 (PhilipLu)
  1870. doc\copysrc.bat
  1871. VS7#150831 (and 5437, reopened) Copysrc.bat needs to copy the makefiles
  1872. from the CRT build using xcopy /r, so that read-only files get replaced.
  1873. The build lab wasn't picking up the latest versions of these files because
  1874. of this.
  1875. Also added a few recent additional files that were missing from the
  1876. script, and expanded the usage comments.
  1877. -----------------------------------------------------------------
  1878. Wed 09-Aug-00 (PhilipLu)
  1879. crtw32\misc\seccook.c, secfail.c
  1880. VS7#147203 /GS failed with the debug CRTs because __security_check_cookie
  1881. wasn't preserving EAX. Rewrite as __declspec(naked) inline asm so /Od
  1882. builds won't trash EAX. Also changed code so in case of a failure,
  1883. control can never return to the user code (barring some sort of longjmp
  1884. in a user-installed handler). Instead, just ExitProcess if a reporting
  1885. handler returns.
  1886. -----------------------------------------------------------------
  1887. Tue 08-Aug-00 (GautamB)
  1888. crtw32\string\lsources
  1889. srcrel\object.mkf, pd-b
  1890. makefile.inc
  1891. Backed out the changes for new string routines.
  1892. -----------------------------------------------------------------
  1893. Tue 08-Aug-00 (GautamB)
  1894. crtw32\stdhpp\complex fstream iosfwd istream locale ostream sstream
  1895. streambuf string xlocale xlocmes xlocmon xlocnum xloctime
  1896. xmemory xstring yvals.h
  1897. libw32\include\limits, yvals.h
  1898. VS7#146241 Changed the _NATIVE_CRTBLD_WCHAR_T to _CRTBLD_NATIVE_WCHAR_T
  1899. for the all the headers except limits. And instead used
  1900. _CRTBLD_NATIVE_WCHAR_T include unsigned short version of wchar_t while
  1901. building CRT with wchar_t as native data type.
  1902. -----------------------------------------------------------------
  1903. Tue 08-Aug-00 (PhilipLu)
  1904. crtw32\misc\qsort.c
  1905. VS7#123134 The fix for vs7#99674 would cause the compare function to be
  1906. called with the same pointer passed for both arguments, which triggered
  1907. asserts in some user code that wasn't expecting self-compares (even though
  1908. that's fine by the standard). In the interest of backwards-compatibility,
  1909. tweak qsort() so it will never issue a self-compare. Also uncovered a
  1910. couple more minor performance wins, so the self-compare avoidance doesn't
  1911. slow down qsort().
  1912. crtw32\h\winheap.h
  1913. Make sure __active_heap isn't available for _WIN64 builds.
  1914. -----------------------------------------------------------------
  1915. Sun 06-Aug-00 (PhilipLu)
  1916. crtw32\dllstuff\crtexe.c
  1917. crtw32\startup\crt0.c, crt0dat.c
  1918. VS7#117746 Replace references to COM+ or complus with "managed."
  1919. fpw32\tran\i386\filter_simd.c, xmmi_types.h
  1920. Placeholder fix for new DAZ status bit in C-step Pentium 4 - don't handle
  1921. WNI exceptions if DAZ bit set. Last minute change from Intel for VC6PP,
  1922. propogated to VC7.
  1923. crtw32\heap\calloc.c, expand.c, malloc.c, realloc.c
  1924. VS7#131005 When using the system heap, don't round up allocations to
  1925. paragraph-multiples, since that defeats pageheap overrun detection. Keep
  1926. doing the rounding for the V5 and V6 heaps (even when the block is too
  1927. big for the small block heap), so we don't modify the behavior there and
  1928. potentially break existing (buggy) apps.
  1929. crtw32\startup\thread.c, threadex.c
  1930. VS7#118688 Detect and give errno EINVAL on NULL threadproc in _beginthread
  1931. and _beginthreadex.
  1932. -----------------------------------------------------------------
  1933. Tue 01-Aug-00 (Gautamb)
  1934. crtw32\string\wcsstr.c
  1935. VS7#145615 Fix for wcsstr("", "").
  1936. crtw32\convert\wcstol.c, wcstoq.c
  1937. VS7#5679, Added multilingual support for wcstol().
  1938. -----------------------------------------------------------------
  1939. Tue 01-Aug-00 (Gautamb)
  1940. makefile, makefile.inc
  1941. srcrel\makefile, object.mkf, pd-b
  1942. crtw32\string\lsources, sources.nt
  1943. Addfile
  1944. crtw32\string\ia64\memcpy.s, memset.s, strcmp.s, strcpy.s, strcat.s, strlen.s
  1945. Added intels drop for string routines
  1946. -----------------------------------------------------------------
  1947. Wed 26-Jul-00 (Gautamb)
  1948. crtw32\eh\frame.cpp
  1949. VS7#124342, Fixed the multiple destruction of exception object.
  1950. -----------------------------------------------------------------
  1951. Thu 20-Jul-00 (Gautamb)
  1952. crtw32\h\conio.h, stdio.h, wchar.h, ctypes.h, tchar.h
  1953. crtw32\stdhpp\wctype.h
  1954. Changed the typedef wchar_t wint_t to typedef unsigned short wint_t. This
  1955. is useful when wchar_t is native type.
  1956. -----------------------------------------------------------------
  1957. Thu 20-Jul-00 (PhilipLu)
  1958. makefile
  1959. Make sure the retail CRT DLLs are linked with /opt:icf to enable identical
  1960. comdat folding. Chops about 50K off msvcp70.dll after the duplication
  1961. of unsigned short and wchar_t specializations checked in on 7/17.
  1962. crtw32\h\i386\dvec.h
  1963. libw32\include\dvec.h
  1964. VS7#127201 Iu16vec8 ctor with 8 args was wrong in this file from Intel.
  1965. crtw32\misc\dbgheap.c
  1966. VS7#129571 _CrtIsValidHeapPointer should only test that the debug heap
  1967. block header can be read, not written. Testing that it is writeable would
  1968. require taking the heap lock to avoid multi-threaded corruption, and is
  1969. unnecessary.
  1970. crtw32\stdhpp\yvals.h
  1971. libw32\include\yvals.h
  1972. VS7#126171 Add #define of _CPPLIB_VER so we can do conditional compilation
  1973. based on version of the C++ Standard Library. Current version is 304.
  1974. -----------------------------------------------------------------
  1975. Mon 17-Jul-00 (GautamB)
  1976. crtw32\stdhpp\complex, fstream, ios, iosfwd, istream, limits, locale, ostream,
  1977. sstream, streambuf, string, xlocale, xlocmes, xlocmon, xloctime, xmemory,
  1978. xstring
  1979. crtw32\stdcpp\instances.cpp, locale.cpp, lsources, wcerr.cpp, wcin.cpp,
  1980. wclog.cpp, wcout.cpp, wiostrea.cpp
  1981. libw32\include\iosfwd
  1982. crtw32\tools\win32\relinc.if
  1983. srcrel\pd-b
  1984. makefile, makefile.inc
  1985. Addfile:
  1986. crtw32\ushcerr.cpp, ushcin.cpp, ushclog.cpp, ushcout.cpp, ushiostr.cpp
  1987. VS7#123149 On compiling with -Zc:wchar_t, we would have replace all the
  1988. entry points in the msvcp70.dll with wchar_t version. Now the problem was
  1989. no programs compiling without -Zc:wchar_t would not be able to use this
  1990. dll. Fixed this problem by including both wchar_t version and unsigned
  1991. short versions of all the entrypoints.
  1992. -----------------------------------------------------------------
  1993. Fri 14-Jul-00 (GautamB)
  1994. crtw32\h\useoldio.h, wchar.h
  1995. libw32\inc64\useoldio.h, wchar.h
  1996. libw32\include\useoldio.h, wchar.h
  1997. VS7#5709 Adding defination for memcpy and memmove in the inline function
  1998. gave warning on PREFIX tools. move the definations out of the functions to
  1999. solve the problem.
  2000. VS7#127305 _OLD_IOSTREAMS_ARE_DEPRECATED warning was also given on IA64
  2001. which should not be there at this point.
  2002. -----------------------------------------------------------------
  2003. Mon 10-Jul-00 (PhilipLu)
  2004. crtw32\stdhpp64\xtree
  2005. libw32\inc64\xtree
  2006. Propogate VC6SP4 fix for vs98#56775 (deadlock in xtree) to the old Win64
  2007. headers.
  2008. crtw32\tools\win32\relinc64.cmd, relinc64.sed [NEW]
  2009. 64-bit release headers should not get _STATIC_CPPLIB change of Jul 6. This
  2010. is a partial fix - "do_relinc 64" is still not doing exactly the right
  2011. thing for wchar.h.
  2012. -----------------------------------------------------------------
  2013. Mon 10-Jul-00 (PhilipLu)
  2014. mkbld.cmd [NEW]
  2015. Script to call cleanbld.cmd, save output in "build.log", and grep output
  2016. for errors or warnings when done.
  2017. srcrel\msvc40.if
  2018. Silence cleansing-stage warnings about setjmp and _STATIC_CPPLIB.
  2019. libw32\msvcprt.src
  2020. Fix VC IA64 CRT build broken by Dinkumware 000524 integration.
  2021. -----------------------------------------------------------------
  2022. Fri 07-Jul-00 (PhilipLu)
  2023. makefile.inc
  2024. crtw32\stdcpp\delaop2.cpp, delop2.cpp, fiopen.cpp, instances.cpp, locale.cpp,
  2025. locale0.cpp, lsources, newaop.cpp, newaop2.cpp, sources.nt, xcosh.c,
  2026. xdscale.c, xdtest.c, xexp.c, xfcosh.c, xfdscale.c, xfdtest.c,
  2027. xferaise.c [NEW], xfexp.c, xfsinh.c, xfvalues.c, xlcosh.c, xldscale.c,
  2028. xldtest.c, xlexp.c, xlsinh.c, xlvalues.c, xsinh.c, xvalues.c
  2029. crtw32\stdhpp\algorithm, bitset, cassert, cctype, cerrno, cfloat, ciso646,
  2030. climits, clocale, cmath, csetjmp, csignal, cstdarg, cstddef, cstdio,
  2031. cstdlib, cstring, ctime, cwchar, cwctype, deque, fstream, hash_map,
  2032. hash_set, ios, iosfwd, iso646.h, istream, iterator, limits, list, locale,
  2033. map, memory, new, ostream, queue, set, sstream, stl.h, streambuf, vector,
  2034. xcomplex, xhash, xiosbase, xlocale, xlocinfo.h, xlocnum, xmemory, xstring,
  2035. xtree, xutility, ymath.h, yvals.h
  2036. crtw32\tools\win32\relinc.if
  2037. doc\copysrc.bat
  2038. libw32\msvcprt.src
  2039. libw32\include\algorithm, bitset, cassert, cctype, cerrno, cfloat, ciso646,
  2040. climits, clocale, cmath, csetjmp, csignal, cstdarg, cstddef, cstdio,
  2041. cstdlib, cstring, ctime, cwchar, cwctype, deque, fstream, hash_map,
  2042. hash_set, ios, iosfwd, iso646.h, istream, iterator, limits, list, locale,
  2043. map, memory, new, ostream, queue, set, sstream, stl.h, streambuf, vector,
  2044. xcomplex, xhash, xiosbase, xlocale, xlocinfo.h, xlocnum, xmemory, xstring,
  2045. xtree, xutility, ymath.h, yvals.h
  2046. srcrel\pd-b
  2047. Finish integrating 000524 drop of Dinkumware C++ Library. This fixes VS7
  2048. bugs 5294, 5311, 72100, 97336, 113256
  2049. This code checks in a number of changes currently under #ifdef. Code under
  2050. _GLOBAL_USING and _HAS_MEMBER_TEMPLATES_REBIND is waiting for the next
  2051. vcLKG compiler update before being enabled. The code under
  2052. _HAS_TEMPLATE_PARTIAL_REORDERING is waiting for a potential compiler fix
  2053. in the VC7 timeframe. If that doesn't happen, the code will have to stay
  2054. disabled to avoid compiler errors (code is for optimization only, not
  2055. correctness). I've also got code under _RETAIN_OLD_CRT_CODE that is there
  2056. so that msvcp70.dll doesn't lose any exports. Once the next vcLKG update
  2057. takes place, the _RETAIN_OLD_CRT_CODE sections can be removed.
  2058. Finally, I've added _DEPRECATED (__declspec(deprecated)) to a number of
  2059. locale-related functions from VC6 which are being retained for backwards
  2060. compatibility but have been superceded by standard-conforming versions.
  2061. -----------------------------------------------------------------
  2062. Wed 06-July-00 (GautamB)
  2063. crtw32\h\wchar.h, internal.h
  2064. crtw32\stdhpp\yvals.h, string, xloctime, xlocnum, xlocmon, xlocmes, xlocale,
  2065. xcomplex, wctype.h, complex, fstream, ios, iosfwd, istream, locale,
  2066. use_ansi.h, typeinfo, string, streambuf, sstream, ostream, locale,
  2067. istream, iosfwd
  2068. Changed the headers so as to be able to statically link to STL even when
  2069. compiling with /MD option.
  2070. -----------------------------------------------------------------
  2071. Wed 06-July-00 (GautamB)
  2072. fpw32\tran\ia64
  2073. VS7#126252, VS7#126122, VS7#125822.
  2074. The original libm_error_support used to set return values for domain
  2075. errors which was not compatible with MS libm stuff (fixed). Also fixed the
  2076. cases where matherr did not worked for float math functions.
  2077. -----------------------------------------------------------------
  2078. Fri 23-Jun-00 (PhilipLu)
  2079. crtw32\stdcpp\cerr.cpp, cin.cpp, clog.cpp, cout.cpp, delaop2.cpp, delop2.cpp,
  2080. fiopen.cpp, instances.cpp, iomanip.cpp, ios.cpp, iosptrs.cpp, iostream.cpp,
  2081. locale.cpp, locale0.cpp, newaop.cpp, newaop2.cpp, newop.cpp, newop2.cpp,
  2082. nomemory.cpp, nothrow.cpp, raisehan.cpp, stdhndlr.cpp, stdthrow.cpp,
  2083. string.cpp, strstrea.cpp, uncaught.cpp, wcerr.cpp, wcin.cpp, wclog.cpp,
  2084. wcout.cpp, wctrans.c, wctype.c, wiostrea.cpp, wlocale.cpp, xcosh.c,
  2085. xdnorm.c, xdscale.c, xdtest.c, xexp.c, xfcosh.c, xfdnorm.c, xfdscale.c,
  2086. xfdtest.c, xfexp.c, xfsinh.c, xfvalues.c, xlcosh.c, xldnorm.c, xldscale.c,
  2087. xldtest.c, xlexp.c, xlocale.cpp, xlpoly.c, xlsinh.c, xlvalues.c, xmath.h,
  2088. xpoly.c, xsinh.c, xstod.c, xvalues.c
  2089. crtw32\stdhpp\algorithm, bitset, complex, deque, exception, fstream,
  2090. functional, hash_map, hash_set, iomanip, ios, iosfwd, iostream, iso646.h,
  2091. istream, iterator, limits, list, locale, map, memory, new, numeric,
  2092. ostream, queue, set, sstream, stack, stdexcept, stl.h, streambuf, string,
  2093. strstream, typeinfo, utility, valarray, vector, xcomplex, xhash, xiosbase,
  2094. xlocale, xlocinfo, xlocinfo.h, xlocmes, xlocmon, xlocnum, xloctime,
  2095. xmemory, xstddef, xstring, xtree, xutility, ymath.h, yvals.h
  2096. libw32\stdhpp\algorithm, bitset, complex, deque, exception, fstream,
  2097. functional, hash_map, hash_set, iomanip, ios, iosfwd, iostream, iso646.h,
  2098. istream, iterator, limits, list, locale, map, memory, new, numeric,
  2099. ostream, queue, set, sstream, stack, stdexcept, stl.h, streambuf, string,
  2100. strstream, typeinfo, utility, valarray, vector, xcomplex, xhash, xiosbase,
  2101. xlocale, xlocinfo, xlocinfo.h, xlocmes, xlocmon, xlocnum, xloctime,
  2102. xmath.h, xmemory, xstddef, xstring, xtree, xutility, ymath.h, yvals.h
  2103. First step in integrating 000524 drop of Dinkumware C++ Library.
  2104. Reformatting sources and renaming some variables to bring in line with
  2105. the new drop, while not changing semantics at all (verified by doing
  2106. binary compares of the compiled libraries). Done so I can cleanly compare
  2107. the current sources against the new drop.
  2108. -----------------------------------------------------------------
  2109. Wed 21-Jun-00 (PhilipLu)
  2110. crtw32\stdhpp\iso646.h
  2111. libw32\include\iso646.h
  2112. VS7#23138 The names #defined in iso646.h are keywords in C++ under /Za
  2113. only, so for /Ze, the defines should stay.
  2114. crtw32\stdhpp\exception, typeinfo
  2115. crtw32\stdhpp64\exception, typeinfo
  2116. libw32\include\exception, typeinfo
  2117. libw32\inc64\exception
  2118. Remove obsolete references to _NTSDK in conditional definition of _CRTIMP.
  2119. -----------------------------------------------------------------
  2120. Wed 21-Jun-00 (GautamB)
  2121. Modified
  2122. crtw32\eh\frame.cpp
  2123. VS7#107054 Fixed differece in order of destruction depending on inlining.
  2124. crtw32\heap\align.c
  2125. crtw32\misc\dbgheap.c
  2126. VS7#116389 Changed _aligned_realloc to mimic _realloc.
  2127. fpw32\tran\fpexcept.c
  2128. VS7#122777 Added _logb in the list of get_fname() so that matherr could be
  2129. called for _logb.
  2130. crtw32\h\useoldio.h
  2131. Added #pragma deprecated(_OLD_IOSTREAMS_ARE_DEPRECATED) to generate
  2132. warning for _OLD_IOSTREAMS_ARE_DEPRECATED.
  2133. fpw32\tran\ia64\libm_error.c libm_support.h
  2134. VS7#120653 Added _MS_ as new LIB_VARIABLE to support ms matherr handling.
  2135. -----------------------------------------------------------------
  2136. Tue 20-Jun-00 (PhilipLu)
  2137. crtw32\eh\hooks.cpp
  2138. Improve stackwalk through terminate() or _inconsistency() by getting rid
  2139. of unnecessary __try/__finally protection, since __try/__except already
  2140. present.
  2141. crtw32\mbstring\mbctype.c
  2142. Reenable 6/3/00 fix for VS7#115987. Prevent reoccurence of VS7#116902 by
  2143. getting rid of circular pprev/pnext linked list pointers in threadmbcinfo
  2144. struct. Fix _POSIX_ problem that could fail to initialize fSystemSet.
  2145. Fix minor performance issue in _setmbcp that would unnecessarily update
  2146. __ptmbcinfo when setting codepage _MB_CP_OEM/_MP_CP_ANSI/_MB_CP_LOCALE that
  2147. was already set.
  2148. crtw32\startup\tidtable.c
  2149. VS7#118174 _freeptd shouldn't free thread mbcinfo if its the same as
  2150. global __ptmbcinfo.
  2151. crtw32\h\mbctype.h, mbdata.h, mbstring.h, mtdll.h, setlocal.h
  2152. srcrel\msvc40.if
  2153. Remove threadmbcinfo.{pprev,pnext}, and rename THREADMBCINFO to
  2154. _THREADMBCINFO, THREADLOCALEINFO to _THREADLOCALEINFO.
  2155. crtw32\stdcpp\newaop.cpp, newop.cpp
  2156. crtw32\stdhpp\new, xstddef
  2157. libw32\include\new, xstddef
  2158. VS7#112746 Use _THROW1(exception) instead of _THROW0(/*exception*/) so
  2159. /EHs compiles get proper throw info. Also define _THROW1(x) as (...) to
  2160. avoid warning C4290.
  2161. crtw32\h\trnsctrl.h
  2162. crtw32\eh\frame.cpp
  2163. crtw32\eh\ia64\trnsctrl.cpp
  2164. VS7#111429 (From RLanser/TiborL) IA64 workaround for SQL crash while
  2165. handling a throw.
  2166. -----------------------------------------------------------------
  2167. Tue 06-Jun-00 (KFrei)
  2168. Modified
  2169. crtw32\rtc\pdblkup.cpp
  2170. VS7#110178 Modified Src/Line# lookup to use PDB7 format
  2171. -----------------------------------------------------------------
  2172. Wed 07-Jun-00 (GautamB)
  2173. Modified
  2174. crtw32\stdhpp64\deque
  2175. libw32\inc64\deque
  2176. VS7#78357 Fixed Leaks in deque.
  2177. -----------------------------------------------------------------
  2178. Wed 07-Jun-00 (PhilipLu)
  2179. crtw32\mbstring\mbctype.c
  2180. VS7#116902 Back out the fix of Jun 3 for vs7#115987. That fix exposes a
  2181. bug in the circular linked list insertion in multithread version of
  2182. _setmbcp. The fix for 115987 will be reinstated with a fix for the
  2183. _setmbcp bug next week, after we split the trees for the PDC.
  2184. -----------------------------------------------------------------
  2185. Sun 04-Jun-00 (PhilipLu)
  2186. cleanbld.cmd, clns_bld.bat, makefile
  2187. srcrel\bldnt.cmd, bldwin95.bat, external.mkf, makefile
  2188. Change the environment variable pointing to the VC++ tools installation
  2189. from V6TOOLS to VCTOOLS. The old environment variable V6TOOLS is still
  2190. supported for now for internal builds, but not in the user CRT rebuild.
  2191. cleanbld.cmd
  2192. Tweaking the CRTMKDEP and DELOBJ options of cleanbld.cmd to make the
  2193. V6TOOLS->VCTOOLS switch go smoothly. CRTMKDEP will regenerate the
  2194. depend.def dependency files even if they already exist. DELOBJ will now
  2195. delete the %CRT_BUILDDIR%\srcrel directory tree (an oversite I should have
  2196. done when the files produced from the %CRTSRC%\srcrel stuff was moved into
  2197. the %CRT_BUILDDIR% directory).
  2198. makefile
  2199. VS7#5678 The makefile should default VCTOOLS to the default installation
  2200. point for VC7, not "\MSDEV", so the user CRT rebuild will work in a clean
  2201. installation without user intervention.
  2202. -----------------------------------------------------------------
  2203. Sat 03-Jun-00 (PhilipLu)
  2204. crtw32\mbstring\mbctype.c
  2205. VS7#115987 __updatetmbcinfo wasn't updating the per-thread mbcinfo(!).
  2206. Every call to something like _ismbcspace would thus call __updatetmbcinfo,
  2207. which takes a lock, so multithread apps using the MBCS APIs can exhibit
  2208. a big performance loss when moving from NT4 (with a VC6 CRT) to Win2K
  2209. (with a VC6.1 CRT).
  2210. crtw32\mbstring\ismbdgt.c, ismbspc.c
  2211. VS7#116057 speed up multithread version of _ismbcspace and _ismbcdigit.
  2212. crtw32\stdhpp\xhash
  2213. libw32\include\xhash
  2214. VS7#85385 hash_set/hash_map could crash because of bugs in growing the
  2215. underlying hash structure. Surgically applying fix from Dinkumware.
  2216. crtw32\stdcpp\ios.cpp, locale.cpp, locale0.cpp
  2217. crtw32\stdhpp\xlocale
  2218. libw32\include\xlocale
  2219. VS7#116039 Lock instantiations of the form "_Lockit _Lock(_LOCK_LOCALE);"
  2220. were useless because _LOCK_LOCALE was defined to nothing, turning the
  2221. object definition into a prototype for a function _Lock, so no lock was
  2222. actually taken.
  2223. -----------------------------------------------------------------
  2224. Fri 02-Jun-00 (GautamB)
  2225. Modified
  2226. crtw32\convert\strtoq.c, wcstoq.c
  2227. VS7#115219 Fixed the special case for _I64_MIN. Previously underflow
  2228. occurred at -_I64_MAX.
  2229. -----------------------------------------------------------------
  2230. Thu 01-Jun-00 (PhilipLu)
  2231. crtw32\h\crtdbg.h
  2232. crtw32\misc\dbgheap.c
  2233. libw32\include\crtdbg.h
  2234. libw32\inc64\crtdbg.h
  2235. VS7#55049 Add new routine _CrtReportBlockType which can be called from a
  2236. client block dumper (as called by _CrtDoForAllClientObjects) to retrieve
  2237. the block type, allowing the subblock types of _CLIENT_BLOCK's to be
  2238. queried.
  2239. makefile
  2240. VS7#109278 Base the VC++ CRTs into the 0x5D?????? range so they don't
  2241. conflict with the URT DLLs.
  2242. crtw32\startup\threadex.c
  2243. VS7#114394 If _beginthreadex is called with a NULL thrdaddr parameter,
  2244. call CreateThread with a pointer to a dummy location to store the thread
  2245. ID. CreateThread on Win9x cannot be called with a non-NULL final argument.
  2246. -----------------------------------------------------------------
  2247. Thu 01-Jun-00 (GautamB)
  2248. Modified
  2249. crtw32\h\setjmpex.h
  2250. VS7#113737 fixed the macro redefination problem arising due to order of
  2251. including the header setjmp.h and setjmpex.h. Now for the case on IA64,
  2252. inclusion of setjmpex.h will define setjmp to _setjmpex on matter if
  2253. setjmp.h is included or not.
  2254. -----------------------------------------------------------------
  2255. Tue 30-May-00 (GautamB)
  2256. Modified
  2257. crtw32\h\setjmpex.h
  2258. VS7#113737 fixed the macro redefination problem arising due to order of
  2259. including the header setjmp.h and setjmpex.h
  2260. Modified
  2261. crtw32\misc\ia64\setjmp.s
  2262. libw32\msvcrt.src, syscrt.src, syscrt64.src
  2263. VS7#103476 Added entry point for _setjmp() along with setjmp() in setjmp.s
  2264. to make it compatible to what function we have on x86. The problem was
  2265. that we had setjmp() on x86 and _setjmp() on ia64.
  2266. crtw32\stdio\input.c
  2267. vs7#5473 Fixed the problem with scanf while reading octal or hex integers
  2268. when format specifier is %d. Which was not according to the standards
  2269. -----------------------------------------------------------------
  2270. Wed 31-May-00 (KFrei)
  2271. crtw32\rtc\error.cpp
  2272. crtw32\rtc\init.cpp
  2273. crtw32\rtc\initsect.cpp
  2274. crtw32\rtc\userapi.cpp
  2275. VS7#95387,110897 initialization simplified - no more locking
  2276. -----------------------------------------------------------------
  2277. Tue 30-May-00 (PhilipLu)
  2278. crtw32\h\i386\fvec.h
  2279. libw32\include\fvec.h
  2280. VS7#101068 add missing functions simd_avg (from Intel).
  2281. -----------------------------------------------------------------
  2282. Tue 30-May-00 (GautamB)
  2283. Modified
  2284. crtw32\eh\frame.cpp
  2285. VS7#112630 Some more COM+ bug fixes for rethrows from different points.
  2286. -----------------------------------------------------------------
  2287. Wed 24-May-00 (GautamB)
  2288. Modified
  2289. Makefile.sub
  2290. VS7#84575 The retail IA64 CRT is currently built with /Zx (use debuggable
  2291. optimizations). This is removed from makefile.sub.
  2292. Modified
  2293. crtw32\eh\frame.cpp
  2294. VS7#5704 Handling STATUS_BREAKPOINT by catch() was not intended. Fixed
  2295. this for cases when this exception could be caught by catch(...) of any
  2296. other catch by use of __set_se_translator().
  2297. -----------------------------------------------------------------
  2298. Tue 23-May-00 (GautamB)
  2299. modified
  2300. crtw32\misc\setenv.c
  2301. VS7#100392 Fixed setenv to return error for the case when
  2302. SetEnvironmentVariable() returns error even if the variable is set in CRT
  2303. environment.
  2304. Modified
  2305. crtw32\convert\atox.c, wtox.c, lsources, sources.nt
  2306. crtw32\h\tchar.h, wchar.h, stdlib.h
  2307. Add File
  2308. crtw32\convert\wtof.c
  2309. VS7#5708 Added new function _wtof and macros for _wtof, _wtoi, _wtoi64
  2310. Modified
  2311. doc\copysrc.bat
  2312. vs7# 110154Added the filenames of newly added file.
  2313. -----------------------------------------------------------------
  2314. Thu 18-May-00 (GautamB)
  2315. modified
  2316. crtw32\misc\w_cmp.c
  2317. crtw32\lowio\getwch.c, putwch.c
  2318. VS7#100392 Fixed the return values when W API return with error not equal
  2319. to ERROR_CALL_NOT_IMPLEMENTED.
  2320. -----------------------------------------------------------------
  2321. Wed 17-May-00 (PhilipLu)
  2322. crtw32\h\stdarg.h, varargs.h
  2323. libw32\include\stdarg.h, varargs.h
  2324. libw32\inc64\stdarg.h, varargs.h
  2325. VS7#109619 - support soft2.5 changes to varargs handling of structs.
  2326. Changes to _APALIGN macro required for IA64, using __alignof intrinsic.
  2327. -----------------------------------------------------------------
  2328. Wed 17-May-00 (GautamB)
  2329. modified
  2330. crtw32\misc\getqloc.c
  2331. VS7#62160 For most LCIDs, the combination of the expanded English-language
  2332. Language/Country pair is unique, but that's not true for 0414 and 0814 on
  2333. NT5. They both map to Norwegian/Norway. Taking LCID 0814 as special
  2334. case, we return Langauge name as Norwegian-Nynorsk.
  2335. -----------------------------------------------------------------
  2336. Wed 17-May-00 (GautamB)
  2337. modified
  2338. crtw32\misc\a_cmp.c, a_env.c, a_loc.c, a_map.c, a_str.c, aw_com.c, w_cmp.c,
  2339. w_env.c, w_loc.c, w_map.c, w_str.c
  2340. crtw32\lowio\getwch.c, cgetws.c, putwch.c
  2341. VS7#100392. Used error = ERROR_CALL_NOT_IMPLEMENTED to check for
  2342. availablity of Unicode version of APIs. This prevents quick fall back to
  2343. A version of APIs.
  2344. -----------------------------------------------------------------
  2345. Wed 17-May-00 (PhilipLu)
  2346. crtw32\h\i386\emmintrin.h, mmintrin.h, xmmintrin.h
  2347. libw32\include\i386\emmintrin.h, mmintrin.h, xmmintrin.h
  2348. For JasonSh - the __m128, __m64, __m128i, and __m128d are now declared in
  2349. the headers, instead of automatically being defined by the C/C++ frontend.
  2350. -----------------------------------------------------------------
  2351. Mon 15-May-00 (PhilipLu)
  2352. makefile, makefile.inc
  2353. crtw32\eh\ehvccctr.cpp [NEW], ehvcccvb.cpp [NEW], lsources
  2354. crtw32\eh\dll\sources
  2355. crtw32\eh\dlllib\sources
  2356. crtw32\eh\i386\ehcrt.mak
  2357. crtw32\eh\ia64\ehcrt.mak
  2358. crtw32\eh\mt\sources
  2359. crtw32\eh\nt\sources
  2360. crtw32\eh\st\sources
  2361. libw32\makefile
  2362. srcrel\objects.mkf, pd-b
  2363. VS7#103362 - Add new compiler support routines for EH-aware vector copy
  2364. constructors. When the compiler generates a default copy-ctor for an
  2365. object which has a data member that's an array of constructable types, and
  2366. exceptions are enabled, it needs to call a helper which unwinds the
  2367. partially constructed array in case a copy-ctor of an array element throws.
  2368. -----------------------------------------------------------------
  2369. Mon 15-May-00 (GautamB)
  2370. modified
  2371. fpw32\tran\lsources
  2372. srcrel\pd-b
  2373. fpw32\tran\ia64\atan.s, atanf.s, powf.s, pow.s, hypot.s, hypotf.s
  2374. Newer version of atan used uninitialised states and causing wrong
  2375. calculations. Restored the older version of atan. Newer version of pow did
  2376. not handle errors correctly. Restored the older version.
  2377. delfile
  2378. fpw32\tran\ia64\matherr.c, matherrf.c, math_err.c math_errf.c
  2379. Deleted the intel math error handling files so as to use CRT math error
  2380. handling functions.
  2381. -----------------------------------------------------------------
  2382. Thu 11-May-00 (PhilipLu)
  2383. makefile.sub
  2384. IA64 build: if debug info is enabled, then add "-d debug" switch to ias
  2385. cmdlines.
  2386. -----------------------------------------------------------------
  2387. Thu 11-May-00 (GautamB)
  2388. crtw32\startup\crt0msg.c
  2389. VS7#104567 Modified _NMSG_WRITE so not to call _CrtDbgReport for _RT_BANNER.
  2390. -----------------------------------------------------------------
  2391. Thu 11-May-00 (PhilipLu)
  2392. crtw32\misc\qsort.c
  2393. VS7#99674 Performance tuning on qsort(). Sorting the pathological case
  2394. of 0,1,0,1,... sped up by 2500x(!). Also made sure all comments about
  2395. invariant conditions are up-to-date.
  2396. -----------------------------------------------------------------
  2397. Wed 10-May-00 (GautamB)
  2398. fpieee\tran\i386\87triga.asm
  2399. VS7#99780. fixed atan2(-0.0, 1.0) to return -0.0.
  2400. -----------------------------------------------------------------
  2401. Wed 03-May-00 (Build Lab for PhilipLu)
  2402. crtw32\stdhpp\sstream, xiosbase, xlocnum, xstring
  2403. libw32\include\sstream, xiosbase, xlocnum, xstring
  2404. Check in files from the 000202 Dinkumware drop that break backward
  2405. compatibility with the C++ Library DLL entrypoint list. Done as part of
  2406. updating the devtools LKG toolset.
  2407. -----------------------------------------------------------------
  2408. Wed 03-May-00 (PhilipLu)
  2409. makefile.sub
  2410. The DLL build should always be built /Z7, not just when doing a build on
  2411. a multi-proc machine. Don't want the build producing a different set of
  2412. files depending on how many CPUs the build machine happens to have.
  2413. libw32\inc64\math.h, stdlib.h
  2414. Backing out BryanT's last checkin of these headers. The math.h checkin
  2415. wipes out a change made last year, and the stdlib.h checkin wipes out some
  2416. CRT DLL entrypoints which are obsolete, but should probably be preserved.
  2417. The stdlib.h change is actually an overly-aggressive fix for the problem
  2418. noted in VS7#22423.
  2419. srcrel\mkclnmkf.c
  2420. Fix trivial typo reported by X-Box (== should have been =).
  2421. -----------------------------------------------------------------
  2422. Mon 01-May-00 (BryanT)
  2423. makefile
  2424. crtw32\crt32.nt, dirs
  2425. crtw32\eh\dirs
  2426. crtw32\helper\nt\sources
  2427. crtw32\linkopts\sources
  2428. crtw32\small\makefile.inc, sources
  2429. fpw32\fp32.nt
  2430. fpw32\tran\sources.nt
  2431. libw32\dirs
  2432. libw32\lib\sources.nt
  2433. libw32\lib\dll\makefile.inc
  2434. libw32\lib\dll40\sources
  2435. libw32\lib\exsup\makefile, sources
  2436. NT Build cleanup.
  2437. crtw32\heap\malloc.c, sbheap.c
  2438. crtw32\startup\crt0dat.c
  2439. crtw32\string\strlwr.c, strupr.c
  2440. POSIX changes
  2441. crtw32\startup\crt0.c
  2442. libw32\inc64\deque, list, math.h, stdlib.h, typeinfo, vector, xlocale, xlocnum
  2443. WIN64 changes
  2444. -----------------------------------------------------------------
  2445. Mon 01-May-00 (GautamB)
  2446. Addfile
  2447. fpieee\tran\ia64\acos.s, acosf.s, asin.s, asinf.s, atan.s, atan2.s, atan2f.c,
  2448. atan2f.s, atanf.c, atanf.s, ceil.s, ceilf.c, ceilf.s, ceill.s, cosh.s,
  2449. coshf.s, exp.s, expf.c, expf.s, fabs.s, fabsf.s, floor.s, floorf.s, fmod.s,
  2450. fmodf.c, fmodf.s, hypot.s, hypotf.s, isnan.s, isnanf.s, ldexp.s, ldexpf.s,
  2451. libm_atan2_reg.s, libm_error.c, libm_reduce.s, libm_support.h, libm_tan.s,
  2452. log.s, logb.s, logbf.s, logf.s, pow.s, powf.s, remainder.s, remainderf.s,
  2453. scalb.s, scalbf.s, sincos.s, sincosf.s, sinh.s, sinhf.s, sqrt.s, sqrtf.s,
  2454. tan.s, tanf.s
  2455. Added new IA64 math routines files in assembly.
  2456. -----------------------------------------------------------------
  2457. Mon 01-May-00 (GautamB)
  2458. fpeee\tran\i386\log.asm, pow.asm, sqrt.asm, trig.asm, triga.asm
  2459. VS7#86209 Speeding up the math routines by assuming (Guranteed for
  2460. optimisation for speed) that the esp will be offset by 4 byte from
  2461. alignment on 8 and then subtracting 4 extra bytes to align it to 8 for
  2462. faster float excess.
  2463. -----------------------------------------------------------------
  2464. Mon 01-May-00 (BryanT)
  2465. crtw32\eh\mips
  2466. crtw32\eh\ppc
  2467. crtw32\helper\mips
  2468. crtw32\helper\ppc
  2469. crtw32\misc\mips
  2470. crtw32\misc\ppc
  2471. crtw32\small\mips
  2472. crtw32\startup\mips
  2473. crtw32\startup\ppc
  2474. crtw32\string\mips
  2475. crtw32\string\ppc
  2476. fpw32\tran\mips
  2477. fpw32\tran\ppc
  2478. libw32\lib\mips
  2479. libw32\lib\ppc
  2480. Delete dead code for mips and ppc. Don't delete dirs in case someone
  2481. wants to resurrect code at a later date...
  2482. -----------------------------------------------------------------
  2483. Tue 25-Apr-00 (GautamB)
  2484. addfile
  2485. crtw32\lowio\getwch.c, cgetws.c
  2486. crtw32\stdio\cwscanf.c
  2487. modified
  2488. crtw32\h\wchar.h, tchar.h, conio.h (libw32\include and libw32\inc64)
  2489. libw32\msvcrt.src, syscrt.src, syscrt64.src
  2490. srcrel\pd-b
  2491. makefile.inc
  2492. VS7#86398. Added Unicode version of console input functions.
  2493. -----------------------------------------------------------------
  2494. Tue 25-Apr-00 (PhilipLu)
  2495. fpw32\tran\i386\debug.c, debug.h, filter.c, filter_simd.c, xmmi2_fp_emul.c
  2496. VS7#90752, 90760, 90764, 90769, 90775, 90779, 90782, 91746 - fixes for SIMD
  2497. support in _fpieee_flt from Intel.
  2498. makefile, makefile.sub
  2499. Add BLD_CRT_LTCG to makefiles, to enable building a CRT with Link Time
  2500. CodeGen enabled. Off by default, only there for internal use.
  2501. -----------------------------------------------------------------
  2502. Mon 24-Apr-00 (PhilipLu)
  2503. crtw32\misc\ia64\memcpys.s, memsets.s
  2504. UTC_P7#1509 - memset and memcpy were truncting the size to 32-bits.
  2505. Propogate RLanser's fix from the \\lang5\v7.ia64sdk3!crt SLM tree.
  2506. crtw32\stdcpp64\xdnorm.c, xfdnorm.c, xfvalues.c, xlvalues.c, xvalues.c
  2507. Work around new warning C4554 for code like "1 << _OFF + 1". Added parens
  2508. to give "1 << (_OFF + 1)". The old code was fine, just needed to shut up
  2509. the warning.
  2510. crtw32\misc\sbheap.c
  2511. Fix memset typo reported by X-Box. Count and value args were reversed.
  2512. Only in V5 SBH code, so not a big deal.
  2513. -----------------------------------------------------------------
  2514. Fri 21-Apr-00 (PhilipLu)
  2515. crtw32\eh\rtti.cpp
  2516. crtw32\h\rtti.h
  2517. Disable new warning C4297 about a throw in an extern "C" function by
  2518. adding explicit exception specification to compiler helpers for
  2519. dynamic_cast and RTTI.
  2520. -----------------------------------------------------------------
  2521. Wed 19-Apr-00 (GautamB)
  2522. crtw32\eh\frame.cpp
  2523. VS7#96508 96370 96341 93684 89697 Bug fixes.
  2524. -----------------------------------------------------------------
  2525. Tue 18-Apr-00 (GautamB)
  2526. crtw32\eh\frame.cpp
  2527. Minor Bug fixes.
  2528. -----------------------------------------------------------------
  2529. Thu 14-Apr-00 (GautamB)
  2530. crtw32\stdcpp\xdnorm.c, xfdnorm.c, xvalues.c, xfvalues.c, xlvalues.c
  2531. Fixed warning no. C4554 about the precedence of - and << operator.
  2532. -----------------------------------------------------------------
  2533. Thu 06-Apr-00 (GautamB)
  2534. crtw32\eh\frame.cpp
  2535. Add more functions for C++ eh support in com+
  2536. -----------------------------------------------------------------
  2537. Wed 05-Apr-00 (PhilipLu)
  2538. makefile
  2539. Buildfix for msvcp* C++ DLL. Stdhndlr.obj wasn't being included in the
  2540. DLL.
  2541. -----------------------------------------------------------------
  2542. Wed 05-Apr-00 (PhilipLu)
  2543. crtw32\eh\ia64\trnsctrl.cpp
  2544. New version of macro GetLanguageSpecificData copied from ntia64.h, supplied
  2545. by Steve Hanson.
  2546. -----------------------------------------------------------------
  2547. Wed 05-Apr-00 (PhilipLu)
  2548. crtw32\misc\i386\sehprolg.asm [NEW]
  2549. crtw32\misc\lsources
  2550. crtw32\misc\dll\sources
  2551. crtw32\misc\dlllib\sources
  2552. crtw32\misc\mt\sources
  2553. crtw32\misc\nt\sources
  2554. crtw32\misc\psx\sources
  2555. crtw32\misc\st\sources
  2556. srcrel\makefile, objects.mkf, pd-b
  2557. makefile, makefile.inc
  2558. Add __SEH_prolog compiler helper for /O1 SEH support.
  2559. -----------------------------------------------------------------
  2560. Tue 28-Mar-00 (GautamB)
  2561. crtw32\eh\frame.cpp
  2562. VS7#88408. HT_DISPCATCH is used to detect no object (catch by type) for
  2563. native, but doesn't work for COM+ - check for a null in the catch object.
  2564. -----------------------------------------------------------------
  2565. Mon 27-Mar-00 (PhilipLu)
  2566. makefile, makefile.inc
  2567. libw32\msvcrt.src, syscrt.src
  2568. srcrel\makefile, mkclnmkf.c
  2569. Enable 64-bit VC CRT build by setting SYS_BLDCRT=0 and LLP64=1 during
  2570. build. Will build CRT DLLs with the VC7.0 names instead of the old
  2571. system names.
  2572. crtw32\stdcpp\strstrea.cpp
  2573. crtw32\stdhpp\istream, strstream, xiosbase
  2574. libw32\include\istream, strstream, xiosbase
  2575. Bugfixes to enable building VC7.0 C++ Standard Library for Win64.
  2576. crtw32\stdhpp\fstream, sstream, streambuf
  2577. libw32\include\fstream, sstream, streambuf
  2578. Temporary casts to enable building VC7.0 C++ Standard Library for Win64.
  2579. Looks like some C++ Standard methods assume an int can be used for
  2580. stream offsets, others use "streamsize" which we currently set to signed
  2581. __int64 on Win64. Until those can be reconciled, add casts to silence
  2582. warnings. Code currently can experience problems with file sizes > 2 GB.
  2583. -----------------------------------------------------------------
  2584. Mon 27-Mar-00 (PhilipLu)
  2585. crtw32\eh\ehvecctr.cpp, ehveccvb.cpp, ehvecdtr.cpp, frame.cpp, rtti.cpp,
  2586. throw.cpp
  2587. crtw32\eh\ia64\handlers.s, trnsctrl.cpp
  2588. crtw32\misc\ia64\jmpuwind.s
  2589. makefile.sub, ntia64bld.cmd
  2590. langapi\include\ehdata.h, rttidata.h
  2591. Remove CC_P7_SOFT25 references from IA64 build, and make it the default.
  2592. -----------------------------------------------------------------
  2593. Tue 21-Mar-00 (GautamB)
  2594. crtw32\misc\dbgheap.c
  2595. crtw32\heap\align.c
  2596. ReOrganised _aligned_offset routines. Fixed vs7#87724. Made
  2597. _aligned_malloc and _aligned_realloc as one liner that would return the
  2598. value from _aligned_offset routines with offset = 0.
  2599. -----------------------------------------------------------------
  2600. Fri 17-Mar-00 (PhilipLu)
  2601. crtw32\time\strftime.c
  2602. VS7#9374 std::time_put::put failed because time formatting for _Strftime
  2603. wasn't initializing the final element ww_timefmt. Fix from PJP (actually,
  2604. it's been there since mid-'98 in a file I didn't understand should be
  2605. merged into the main CRT tree).
  2606. -----------------------------------------------------------------
  2607. Thu 16-Mar-00 (GautamB)
  2608. crtw32\misc\dbgheap.c
  2609. crtw32\heap\align.c
  2610. VS7#86467 Offset >= size doesn't make any sense. If offset is >=, then
  2611. 1) assert for debug version, 2) return EINVAL error.
  2612. -----------------------------------------------------------------
  2613. Thu 16-Mar-00 (GautamB)
  2614. crtw32\misc\dbgheap.c
  2615. crtw32\heap\align.c
  2616. VS7#87084, 86467. Aligned routines were using 1 extra byte. (fixed). Also
  2617. checked to -ve values of offset.
  2618. -----------------------------------------------------------------
  2619. Thu 16-Mar-00 (GautamB)
  2620. crtw32\convert\toupper.c, tolower.c
  2621. VS7#9616 The performance enhancement changes were only visible for
  2622. _tolower(). __tolower_mt() is also used at a lot of places. Modified code
  2623. such that the performance changes are visible for both of them.
  2624. -----------------------------------------------------------------
  2625. Thu 16-Mar-00 (GautamB)
  2626. crtw32\lowio\putwch.c
  2627. VS7#58257 _putwch was using GetConsoleCP() for conversion from Unicode to
  2628. MBCS. Changed it to more suitable GetConsoleOutputCP().
  2629. -----------------------------------------------------------------
  2630. Wed 15-Mar-00 (GautamB)
  2631. crtw32\stdio\sprintf.c swprintf.c vsprint.c vswprint.c
  2632. crtw32\h\stdio.h wchar.h tchar.h
  2633. libw32\include\stdio.h wchar.h tchar.h
  2634. libw32\inc64\stdio.h wchar.h tchar.h
  2635. Added a set of new functions which can be used to count the number of
  2636. characters needed for printing formatted data using printf or any such
  2637. function. (_scprintf(), _scwprintf(), _vscprintf(), _vscwprintf())
  2638. -----------------------------------------------------------------
  2639. Fri 10-Mar-00 (GautamB)
  2640. crtw32\convert\tolower.c, toupper.c
  2641. crtw32\string\stricmp.c, stnicmp.c, memicmp.c
  2642. Moved the performance enhancement stuff from stricmp routines to
  2643. conversion routines.
  2644. -----------------------------------------------------------------
  2645. Fri 10-Mar-00 (GautamB)
  2646. crtw32\stdio\output.c, sprintf.c vsprintf.c
  2647. VS7#83962 - Modified sprintf and vsprintf so as to return length of the
  2648. formatted even on passing NULL pointer for destination string
  2649. -----------------------------------------------------------------
  2650. Thu 09-Mar-00 (PhilipLu)
  2651. crtw32\h\i386\xmmintrin.h
  2652. libw32\include\xmmintrin.h
  2653. VSPP#78 - xmmintrin.h should not declare _mm_malloc and _mm_free when
  2654. using VC. It should include malloc.h to get them, instead.
  2655. srcrel\pd-b
  2656. Copy over the Intel- and AMD-supplied headers from libw32\include to the
  2657. build tree.
  2658. -----------------------------------------------------------------
  2659. Wed 08-Mar-00 (PhilipLu)
  2660. crtw32\h\i386\emmintrin.h, fvec.h, ivec.h, mmintrin.h, xmmintrin.h
  2661. libw32\include\emmintrin.h, fvec.h, ivec.h, mmintrin.h, xmmintrin.h
  2662. Latest versions of Intel-supplied FP intrinsics headers.
  2663. -----------------------------------------------------------------
  2664. Tue 07-Mar-00 (PhilipLu)
  2665. fpw32\tran\ia64\huge.s
  2666. UTC_P7#1386 - _HUGE was 4-byte aligned, should be 8.
  2667. -----------------------------------------------------------------
  2668. Mon 06-Mar-00 (PhilipLu)
  2669. crtw32\h\internal.h
  2670. crtw32\startup\crt0.c, crt0dat.c, mlock.c
  2671. VS7#83663 - Call __crtExitProcess instead of ExitProcess. __crtExitProcess
  2672. checks to see if this is a COM+ app by doing a GetModuleHandle on
  2673. mscoree.dll, then looking for the CorExitProcess entrypoint, and calling
  2674. that instead of ExitProcess if it's found. This allows COM+ to clean up
  2675. cleanly when using the CRT, so the FinalizerThread has a chance to do its
  2676. exit processing.
  2677. -----------------------------------------------------------------
  2678. Mon 06-Mar-00 (PhilipLu)
  2679. Propogate fixes/changes made to the VC6 ProcessorPack CRT:
  2680. crtw32\eh\i386\trnsctrl.cpp
  2681. Warning C4851 is gone for VC6 and VC7, now just C4731.
  2682. crtw32\h\fpieee.h
  2683. fpw32\tran\lsources
  2684. fpw32\tran\i386\debug.c [NEW], debug.h [NEW], filter.h, filter_simd.c,
  2685. xmmi2_fp_emul.c [NEW], xmmi_fp_emul.c, xmmi_types.h
  2686. libw32\include\fpieee.h
  2687. libw32\inc64\fpieee.h
  2688. srcrel\pd-b
  2689. New WNI support and KNI bugfixes for _fpieee_flt.
  2690. crtw32\h\i386\dvec.h [NEW], emmintrin.h [NEW], fvec.h [NEW], ivec.h [NEW],
  2691. mm3dnow.h [NEW], mmintrin.h [NEW], xmmintrin.h [NEW]
  2692. libw32\include\dvec.h [NEW], emmintrin.h [NEW], fvec.h [NEW], ivec.h [NEW],
  2693. mm3dnow.h [NEW], mmintrin.h [NEW], xmmintrin.h [NEW]
  2694. srcrel\makefile, pd-b
  2695. New headers of vendor-supplied FP intrinsics. These do not get used by
  2696. the CRT build; they are simply there to be dropped to users.
  2697. crtw32\tools\win32\relinc.cmd
  2698. Handle new vendor-supplied FP intrinsic headers for 32-bit includes.
  2699. -----------------------------------------------------------------
  2700. Fri 03-Mar-00 (PhilipLu)
  2701. crtw32\misc\ia64\chandler.c
  2702. Fix for SEH support from Intel.
  2703. -----------------------------------------------------------------
  2704. Fri 03-Mar-00 (GautamB)
  2705. crtw32\h\trnsctrl.h
  2706. crtw32\eh\frame.cpp
  2707. libw32\msvcrt.src, syscrt.src, syscrt64.src
  2708. Exported __DestructExceptionObject from dll and made slight changes to
  2709. definition of __CxxExceptionFilter.
  2710. -----------------------------------------------------------------
  2711. Thu 02-Mar-00 (PhilipLu)
  2712. crtw32\eh\i386\trnsctrl.cpp
  2713. VS7#83643 - _UnwindNestedFrames must preserve callee-save regs EBX, ESI,
  2714. and EDI, since RtlUnwind will trash them all.
  2715. -----------------------------------------------------------------
  2716. Mon 28-Feb-00 (PhilipLu)
  2717. makefile, makefile.inc
  2718. crtw32\stdcpp\cerr.cpp, cin.cpp, clog.cpp, cout.cpp, delaop2.cpp, delop2.cpp,
  2719. fiopen.cpp, instances.cpp, iomanip.cpp, ios.cpp, iosptrs.cpp, iostream.cpp,
  2720. locale.cpp, locale0.cpp, lsources, newaop.cpp, newaop2.cpp, newop2.cpp,
  2721. nomemory.cpp, nothrow.cpp [NEW], raisehan.cpp, sources.nt, stdhndlr.cpp,
  2722. stdthrow.cpp, string.cpp, strstrea.cpp, uncaught.cpp, wcerr.cpp, wcin.cpp,
  2723. wclog.cpp, wcout.cpp, wctrans.c, wctype.c, wiostrea.cpp, wlocale.cpp,
  2724. xcosh.c, xdnorm.c, xdscale.c, xdtest.c, xexp.c, xfcosh.c, xfdnorm.c,
  2725. xfdscale.c, xfdtest.c, xfexp.c, xfsinh.c, xfvalues.c, xlcosh.c, xldnorm.c,
  2726. xldscale.c, xldtest.c, xlexp.c, xlocale.cpp, xlpoly.c, xlsinh.c,
  2727. xlvalues.c, xmath.h, xpoly.c, xsinh.c, xstod.c, xvalues.c
  2728. crtw32\stdhpp\algorithm, bitset, cassert, cctype, cerrno, cfloat, ciso646,
  2729. climits, clocale, cmath, complex, csetjmp, csignal, cstdarg, cstddef,
  2730. cstdio, cstdlib, cstring, ctime, cwchar, cwctype, deque, exception,
  2731. fstream, functional, hash_map, hash_set, iomanip, ios, iosfwd, iostream,
  2732. iso646.h, istream, iterator, limits, list, locale, map, memory, new,
  2733. numeric, ostream, queue, set, sstream, stack, stdexcept, streambuf, string,
  2734. strstream, utility, valarray, vector, xcomplex, xhash, xiosbase, xlocale,
  2735. xlocinfo, xlocinfo.h, xlocmes, xlocmon, xlocnum, xloctime, xmemory,
  2736. xstddef, xstring, xtree, xutility, ymath.h, yvals.h
  2737. doc\copysrc.bat
  2738. libw32\msvcprt.src
  2739. libw32\include\algorithm, bitset, cassert, cctype, cerrno, cfloat, ciso646,
  2740. climits, clocale, cmath, complex, csetjmp, csignal, cstdarg, cstddef,
  2741. cstdio, cstdlib, cstring, ctime, cwchar, cwctype, deque, exception,
  2742. fstream, functional, hash_map, hash_set, iomanip, ios, iosfwd, iostream,
  2743. iso646.h, istream, iterator, limits, list, locale, map, memory, new,
  2744. numeric, ostream, queue, set, sstream, stack, stdexcept, streambuf, string,
  2745. strstream, utility, valarray, vector, xcomplex, xhash, xiosbase, xlocale,
  2746. xlocinfo, xlocinfo.h, xlocmes, xlocmon, xlocnum, xloctime, xmath.h,
  2747. xmemory, xstddef, xtree, xutility, ymath.h, yvals.h
  2748. srcrel\pd-b
  2749. Integrate the 000202 drop of the C++ Library from Dinkumware. Main change
  2750. is to reformat all the headers and use longer identifiers. Header xstring
  2751. not yet integrated, because basic_string was rewritten too much to maintain
  2752. compatibility between old libs and new MSVCP*.DLL. Other new code which
  2753. cannot be turned on yet under #if _CRT_NEW_STL_DROP.
  2754. Removes code which was previously under _RETAIN_OLD_CRT_CODE, and puts
  2755. old code which must be maintained until next LKG toolset update under
  2756. _RETAIN_OLD_CRT_CODE.
  2757. makefile.sub
  2758. Enable /Wp64 in the x86 build.
  2759. -----------------------------------------------------------------
  2760. Fri 25-Feb-00 (PhilipLu)
  2761. crtw32\h\crtdbg.h
  2762. libw32\include\crtdbg.h
  2763. libw32\inc64\crtdbg.h
  2764. VS7#79719 - The _CrtDbgBreak macro should use the __debugbreak intrinsic
  2765. when _MSC_VER >= 1300.
  2766. crtw32\h\setjmp.h
  2767. libw32\include\setjmp.h
  2768. libw32\inc64\setjmp.h
  2769. VS7#81945 - setjmp.h is now allowed with /com+.
  2770. -----------------------------------------------------------------
  2771. Thu 24-Feb-00 (PhilipLu)
  2772. doc\copysrc.bat
  2773. Add 'platdst <path>' option to copy platform-specific files to different
  2774. directory from main files. Wanted by the build lab for copying to
  2775. devtools\common and devtools\%PLATFORM%.
  2776. -----------------------------------------------------------------
  2777. Thu 24-Feb-00 (GautamB)
  2778. crtw32\misc\setenv.c
  2779. VS7#66530 _wputenv didn't use to work on Win9x as there was call in it
  2780. SetEnvironmentVariable() which pointed to SetEnvironVariableW() and this
  2781. API is not on Win9x so in effect environment didn't get updated. Fixed
  2782. this.
  2783. -----------------------------------------------------------------
  2784. Thu 24-Feb-00 (GautamB)
  2785. crtw32\h\wchar.h
  2786. VS7#80515 Checked all othe cases where order of including wchar.h with
  2787. other header file does not make any difference. Only stdio.h had this
  2788. problem. which is fixed.
  2789. -----------------------------------------------------------------
  2790. Tue 16-Feb-00 (GautamB)
  2791. crtw32\dllstuff\crtexe.c
  2792. VS7#79603 Left out files for earlier checkin.
  2793. -----------------------------------------------------------------
  2794. Tue 15-Feb-00 (PhilipLu)
  2795. cleanbld.cmd
  2796. srcrel\clnsrcrel.bat, external.mkf, makefile
  2797. The cleanbld.cmd build no longer creates files in %CRT_SRC%\srcrel.
  2798. Instead, any srcrel-related files that get built are created in
  2799. %CRT_BUILDDIR%\srcrel\%PLATFORM% instead. That allows Win32 and Win64
  2800. builds to more easily share the same enlistment.
  2801. -----------------------------------------------------------------
  2802. Tue 15-Feb-00 (GautamB)
  2803. crtw32\lowio\lowio.mkf, lsources, putwch.c (New)
  2804. crtw32\stdio\lsources, makdfile.c, output.c, cwprintf.c (New)
  2805. crtw32\h\wchar.h, conio.h, tchar.h
  2806. srcrel\pd-b
  2807. makefile
  2808. makefile.inc
  2809. VS7#58257 Added unicode versions for cprintf, _putch and _cputs.
  2810. (_cwprintf, _putwch, _cputws respectively).
  2811. -----------------------------------------------------------------
  2812. Tue 15-Feb-00 (GautamB)
  2813. crtw32\convert\convert.mkf, lsources, sources.nt, strtoq.c, wcstoq.c(New)
  2814. crtw32\h\wchar.h, stdlib.h, tchar.h
  2815. VS7#5427 Added strtoi64, strtoui64, wcstoi64 and wcstoui64, which converts
  2816. string to __int64.
  2817. -----------------------------------------------------------------
  2818. Tue 15-Feb-00 (GautamB)
  2819. crtw32\startup\crt0.c
  2820. VS7#79603 Changed GetModuleHandle() in check_complus_app() to
  2821. GetModuleHandleA(). GetModuleHandle() maps to GetModuleHandleW() for
  2822. UNICODE main (wmain) which breaks the app on Win9X.
  2823. -----------------------------------------------------------------
  2824. Tue 15-Feb-00 (GautamB)
  2825. crtw32\eh\frame.cpp
  2826. VS7#79598 Added a function CxxExceptionFilter for use in COM+ EH. This
  2827. function can be used to turn "try{...}catch(foo a){...}" to
  2828. "try{...} except(_CxxExceptionFilter(foo.typeinfo, _exception_info(), &a)){...}".
  2829. -----------------------------------------------------------------
  2830. Tue 15-Feb-00 (PhilipLu)
  2831. crtw32\eh\frame.cpp
  2832. VS7#79460 std::uncaught_exception() support broke unwinding. We were
  2833. putting a __try/__finally around the call to _UnwindNestedFrames, which
  2834. calls RtlUnwind, but _UnwindNestedFrames will only work if the top-most
  2835. exception frame is from the exception dispatcher, not anything of ours.
  2836. -----------------------------------------------------------------
  2837. Mon 14-Feb-00 (PhilipLu)
  2838. crtw32\eh\i386\trnsctrl.cpp
  2839. Warning C4851, disabled in Jan 31 checkin, is actually C4731 in the VC7
  2840. backend.
  2841. -----------------------------------------------------------------
  2842. Fri 11-Feb-00 (GautamB)
  2843. crtw32\dllstuff\crtlib.c
  2844. crtw32\startup\dllcrt0.c, thread.c, threadex.c
  2845. VS7#47322 There were two problem in the way threads were created. 1) if we
  2846. called some locale dependent function, it would result in leak of ptd
  2847. allocated during the call to the function. Second we would like to know if
  2848. the thread is created ASAP, even if theread is created by some call to API
  2849. so that later on when we could allocate memory for ptd failing in which
  2850. results in termination of thread creation process. Earlier failing in
  2851. alloting the memory for ptd, once the thread is created would terminate
  2852. the whole process.
  2853. -----------------------------------------------------------------
  2854. Thu 03-Feb-00 (PhilipLu)
  2855. libw32\syscrt.rc, sysirt.rc, sysprt.rc
  2856. srcrel\external.mkf, objects.mkf
  2857. makefile
  2858. Tweak the system CRT build. Version number is 7.0, not 6.1. The implibs
  2859. are created as msvcrt.lib etc., not syscrt.lib. And the C++ Library DLL is
  2860. now named syspr70.dll, not msvcp??.dll, so we can still have a versioned
  2861. C++ DLL name, but have it for the system only.
  2862. libw32\msvcrt.rc
  2863. The internal filename in the version resource should be MSVCR70.DLL,
  2864. not MSVCRT70.dll.
  2865. -----------------------------------------------------------------
  2866. Tue 01-Feb-00 (PhilipLu)
  2867. makefile.inc
  2868. VS7#76534 Win64 static CRTs are not being built with delop2.cpp that was
  2869. added for the Win64 CRT DLL build back in early Dec '99.
  2870. -----------------------------------------------------------------
  2871. Mon 31-Jan-00 (PhilipLu)
  2872. crtw32\eh\i386\trnsctrl.cpp
  2873. Disable new warning C4851 about EBP being modified by inline-asm.
  2874. srcrel\external.mkf, makefile
  2875. Checkin for the build lab doing 64-bit builds. Clear _CL_ when we need
  2876. to use the 32-bit compiler to build an .EXE, since the build lab uses
  2877. _CL_ to point to the 64-bit compiler passes while self-building.
  2878. -----------------------------------------------------------------
  2879. Sun 30-Jan-00 (PhilipLu)
  2880. srcrel\makefile
  2881. Clean up IA64 build so x86 components aren't copied over to crtbld\crt\src.
  2882. doc\copysrc.bat
  2883. Copy proper files for IA64 build, and don't copy CRT rebuild components
  2884. when doing a SYSCRT copy. Also, copy files to the destination root, not
  2885. dest-root\crt\src.
  2886. -----------------------------------------------------------------
  2887. Fri 28-Jan-00 (GautamB)
  2888. crtw32/string/stricmp.c, memicmp.c, strnicmp.c
  2889. crtw32/h/setlocale.h, mtdll.h
  2890. crtw32/misc/setlocale.c, nlsdata2.c
  2891. VS7#9616 Enhanced the performance for locale based case insensitive
  2892. comparision. What we do here is check if the current CTYPE locale has
  2893. first 127 characters same as CLOCALE. If yes the we can convert the UPPER
  2894. case character less then 127 to LOWER without calling time consuming
  2895. tolower.
  2896. -----------------------------------------------------------------
  2897. Fri 28-Jan-00 (GautamB)
  2898. crtw32/stdio/popen.c
  2899. VS7#16833 Changed the way popen used to work. Also made if threadsafe.
  2900. What popen used to do was first duplicate the current stdio handle that
  2901. we were supposed to trap, then close the local copy and set the one end
  2902. of the pipe as that handle, then spawn the new process and then again
  2903. setting up and new handle for stdio. Now we just pass the existing pipe
  2904. to new process as the handle we wish to trap.
  2905. -----------------------------------------------------------------
  2906. Fri 28-Jan-00 (GautamB)
  2907. crtw32/align.c
  2908. Performance enhancement of _aligned_realloc and _aligned_offset_realloc.
  2909. -----------------------------------------------------------------
  2910. Thu 27-Jan-00 (PhilipLu)
  2911. makefile
  2912. VS7#5437 - The user rebuild scenario wasn't creating PDBs for the DLL
  2913. CRTs. Actually, it was creating them, in the root directory!
  2914. makefile
  2915. VS7#14930 - Uses of the V6TOOLS macro need to be quote-protected in case
  2916. V6TOOLS is a path with spaces in it.
  2917. libw32\msvcrt.src
  2918. srcrel\external.mkf, makefile
  2919. makefile, makefile.inc, makefile.sub
  2920. VS7#16831 - The user rebuild scenario was pretty thoroughly broken. This
  2921. repairs it and cleans it up significantly, removing references to things
  2922. like BLD_SYSCRT from the cleansed makefiles.
  2923. doc\copysrc.bat
  2924. Major cleanup on this file, which can now be used to copy the result of
  2925. a CRT build using cleanbld.cmd into a separate tree to create the image
  2926. that would be installed as %VC-ROOT%\crt\src.
  2927. -----------------------------------------------------------------
  2928. Tue 25-Jan-00 (PhilipLu)
  2929. crtw32\h\sect_attribs.h
  2930. crtw32\misc\lsources, seccinit.c [NEW], seccook.c [NEW], secfail.c [NEW],
  2931. seclocf.c [NEW]
  2932. doc\copysrc.bat
  2933. libw32\msvcrt.src, syscrt.src
  2934. srcrel\pd-b
  2935. makefile, makefile.inc
  2936. Implement the CRT support for compiler switch /GS. This is used to protect
  2937. against overwriting a local buffer variable and wiping out a return
  2938. address, which can allow a hacker to hijack a program's execution.
  2939. crtw32\startup\crt0msg.c
  2940. Fix a buffer overwrite problem (!) I happened to notice while doing the
  2941. /GS support. _NMSG_WRITE could overflow a local buffer when creating the
  2942. text to display in a message box.
  2943. -----------------------------------------------------------------
  2944. Mon 24-Jan-00 (GautamB)
  2945. crtw32\heap\align.c
  2946. Modified the _aligned_realloc reoutines to save the content of memblock
  2947. that is reallocated as much as possible.
  2948. -----------------------------------------------------------------
  2949. Mon 24-Jan-00 (PhilipLu)
  2950. crtw32\h\wchar.h
  2951. libw32\include\wchar.h
  2952. libw32\inc64\wchar.h
  2953. VS7#74640 - _wexec* and _wspawn* prototypes in wchar.h should return
  2954. intptr_t, not int, for compatibility with process.h and definitions.
  2955. -----------------------------------------------------------------
  2956. Thu 20-Jan-00 (PhilipLu)
  2957. crtw32\h\stdarg.h, varargs.h
  2958. libw32\include\stdarg.h, varargs.h
  2959. libw32\inc64\stdarg.h, varargs.h
  2960. srcrel\msvc40.if
  2961. VS7#73359 - Remove __epcg__ references. This was an old Intel define that
  2962. they no longer need.
  2963. -----------------------------------------------------------------
  2964. Mon 17-Jan-00 (v-vadimp)
  2965. crtw32\eh\ia64\handlers.s
  2966. crtw32\eh\ia64\trnsctrl.cpp
  2967. Fixed 2.5 IA64 software convention deficiencies in the previous checkins
  2968. -----------------------------------------------------------------
  2969. Fri 14-Jan-00 (v-vadimp)
  2970. crtw32\eh\frame.cpp
  2971. crtw32\eh\ia64\handlers.s
  2972. crtw32\eh\ia64\trnsctrl.cpp
  2973. crtw32\misc\ia64\jmpuwind.s
  2974. NLG support for the debugger, some macro defs to make code backward
  2975. compatible with 2.4, __NLG_Destination & __NLG_Dispatch got an extra "_"
  2976. for IA64
  2977. -----------------------------------------------------------------
  2978. Wed 12-Jan-00 (gautamb)
  2979. crtw32\h\malloc.h
  2980. vs7#71409 fixed the macro _mm_free which was supposed to have one parameter.
  2981. -----------------------------------------------------------------
  2982. Mon 10-Jan-00 (PhilipLu)
  2983. crtw32\exec\dospawn.c
  2984. VS7#71206 - _spawn* called with _P_WAIT needs to sign-extend the exit
  2985. code into an intptr_t for WIN64.
  2986. -----------------------------------------------------------------
  2987. Thu 06-Jan-00 (rlanser)
  2988. crtw32\eh\frame.cpp
  2989. crtw32\eh\throw.cpp
  2990. crtw32\eh\ia64\trnsctrl.cpp
  2991. crtw32\h\mtdll.h
  2992. crtw32\h\trnsctrl.h
  2993. IA64: SOFT25 Image Relative bug fixes.
  2994. -----------------------------------------------------------------
  2995. Wed 05-Jan-00 (Gautamb)
  2996. crtw32\h\dbgint.h, crtdbg.h
  2997. crtw32\misc\dbgheap.c
  2998. crtw32\heap\align.c
  2999. libw32\include\crtdbg.h
  3000. libw32\inc64\crtdbg.h
  3001. Added debug support for aligned routines.
  3002. -----------------------------------------------------------------
  3003. Tue 04-Jan-00 (Gautamb)
  3004. libw32\tools\source\ifstrip\eval.c ifstrip.c
  3005. libw32\tools\source\striphdr\striphdr.c
  3006. Added support for internal CRT build.
  3007. -----------------------------------------------------------------
  3008. Wed 29-Dec-99 (Gautamb)
  3009. crtw32\heap\align.c
  3010. Fixed some serious bug in _aligned_offset_**() routines.
  3011. -----------------------------------------------------------------
  3012. Fri 17-Dec-99 (PhilipLu)
  3013. makefile
  3014. VS7#65276 - Create alias records for data symbols and function descriptors,
  3015. not just function entrypoints, e.g. create alias timezone -> _timezone,
  3016. not just .timezone -> ._timezone.
  3017. -----------------------------------------------------------------
  3018. Thu 16-Dec-99 (GautamB)
  3019. modified
  3020. crtw32\h\limits.h
  3021. crtw32\stdio\fputwc.c, ungetwc.c
  3022. VS7#5414 - Updated the value of MB_LEN_MAX to 5 and modified functions
  3023. fputwc() and ungetwc() accordingly.
  3024. -----------------------------------------------------------------
  3025. Thu 16-Dec-99 (GautamB)
  3026. modified
  3027. all files
  3028. VS7#30929 - Modified the Copyright years for Microsoft files to -2000.
  3029. -----------------------------------------------------------------
  3030. Thu 16-Dec-99 (GautamB)
  3031. modified
  3032. crtw32\malloc.h
  3033. VS7#49169 - Modified HEAP_MAXREQ to 0xFFFFFFFFFFFFFFE0 for win64
  3034. -----------------------------------------------------------------
  3035. Thu 16-Dec-99 (PhilipLu)
  3036. makefile
  3037. VS7#45623 - Build of tcmapdll.lib for IA64 was incorrect, so alias records
  3038. for _t* names to the equivalent _mb* names weren't working.
  3039. Also, added a new build flag. Set BLD_TESTCRT=1, then the build will
  3040. create CRT DLLs testcrt[d], testprt[d] and testirt[d] instead of the
  3041. normal names. This allows building CRTs which can be safely tested without
  3042. interfering with system protected files or the existing CRTs.
  3043. -----------------------------------------------------------------
  3044. Fri 10-Dec-99 (GautamB)
  3045. modified
  3046. makefile.inc
  3047. libw32\msvcrt.src, syscrt.src, syscrt64.src
  3048. srcrel\pd-b
  3049. crtw32\h\malloc.h
  3050. crtw32\heap\heap.mkf, lsources
  3051. crtw32\misc\a_cmp.c, a_loc.c, a_map.c, a_str.c, w_cmp.c, w_loc.c, w_map.c,
  3052. w_str.c
  3053. crtw32\string\strlwr.c, strupr.c, wcslwr.c, wcsupr.c, wcsxfrm.c
  3054. crtw32\time\wcsftime.c
  3055. crtw32\lowio\getch.c
  3056. Add file
  3057. crtw32\heap\resetstk.c
  3058. VS7#62239 Secured the use of _alloca in case of stackoverflow. Also
  3059. introduced a new function (_resetstkoflw() )which recovers for
  3060. stackoverflow.
  3061. -----------------------------------------------------------------
  3062. Fri 10-Dec-99 (GautamB)
  3063. modified
  3064. makefile.inc
  3065. libw32\msvcrt.src, syscrt.src, syscrt64.src
  3066. srcrel\pd-b
  3067. crtw32\h\malloc.h
  3068. crtw32\heap\heap.mkf, lsources
  3069. crtw32\heap\mt\lsources
  3070. crtw32\heap\dll\lsources
  3071. libw32\include\malloc.h
  3072. libw32\inc64\malloc.h
  3073. addfile
  3074. crtw32\heap\align.c
  3075. Added _aligned_malloc, _aligned_realloc, _aligned_offset_malloc,
  3076. _aligned_offset_realloc and _aligned_free functions.
  3077. -----------------------------------------------------------------
  3078. Fri 10-Dec-99 (GautamB)
  3079. modified
  3080. crtw32\h\mtdll.h
  3081. crtw32\startup\mlock.h
  3082. langapi\undname\undname.cxx
  3083. VS7#5674 Added a new lock for critical section in unDName()
  3084. -----------------------------------------------------------------
  3085. Fri 10-Dec-99 (GautamB)
  3086. modified
  3087. crtw32\h\ctime.h
  3088. crtw32\time\dtoxtime.c
  3089. VS7#21083 Modified localtotime for taking into account leap years upto
  3090. 2999. Also changed _MAX_YEAR for Win64 to 1099
  3091. -----------------------------------------------------------------
  3092. Fri 10-Dec-99 (GautamB)
  3093. modified
  3094. crtw32\startup\i386\crtstk.asm
  3095. VS7#27118 Converted _chkstk and _alloca_probe to procedure
  3096. -----------------------------------------------------------------
  3097. Fri 10-Dec-99 (GautamB)
  3098. modified
  3099. crtw32\h\eh.h, mtdll.h
  3100. crtw32\eh\frame.cpp
  3101. crtw32\stdcpp\UNCAUGHT.cpp
  3102. VS#5340 Added a new function (our version of uncaught_exception) which is
  3103. then used by uncaught_exception for doing it's work. Also
  3104. introduced new flag in struct tiddata for keeping a look on
  3105. exception.
  3106. -----------------------------------------------------------------
  3107. Fri 10-Dec-99 (GautamB)
  3108. modified
  3109. crtw32\h\wchar.h
  3110. VS#5709 Modified wmemcpy and wmemmove for faster perfomance.
  3111. -----------------------------------------------------------------
  3112. Sat 08-Dec-99 (rlanser)
  3113. crtw32\stdhpp64\new
  3114. libw32\inc64\new
  3115. Change "operator delete(void *, const std::nothrow_t&)" to _WIN64.
  3116. -----------------------------------------------------------------
  3117. Sat 04-Dec-99 (rlanser)
  3118. crtw32\stdcpp64\delop2.cpp, delop2_s.cpp, lsources, sources.nt
  3119. crtw32\stdhpp64\new
  3120. libw32\inc64\new
  3121. srcrel\pd-b
  3122. Add "operator delete(void *, const std::nothrow_t&)" to the
  3123. hacked NT headers etal (stdhpp64, stdcpp64, inc64).
  3124. -----------------------------------------------------------------
  3125. Fri 03-Dec-99 (PhilipLu)
  3126. crtw32\h\math.h
  3127. libw32\include\math.h
  3128. libw32\inc64\math.h
  3129. VS7#65291 - the headers do '#if _M_MRX000' in one place, and
  3130. '#if defined(_M_MRX000)' in another. That interferes with a new warning
  3131. the frontend wants to make available. Change to use defined(_M_MRX000)
  3132. everywhere.
  3133. srcrel\makefile
  3134. We should not be copying trnsctrl.h into the crt\src user rebuild dir,
  3135. since we don't ship source for the EH support and this header isn't used
  3136. for the user rebuild scenario. Looks like this header was being shipped
  3137. accidentally. Change the build cleansing procedure to stop copying this
  3138. file over for shipping.
  3139. crtw32\h\crtdbg.h, direct.h, heap.h, malloc.h, mbstring.h, memory.h, mtdll.h,
  3140. new.h, nlsint.h, process.h, search.h, stdarg.h, stddef.h, stdexcpt.h,
  3141. stdio.h, stdlib.h, string.h, varargs.h
  3142. crtw32\heap\sbheap.c
  3143. crtw32\lowio\write.c
  3144. srcrel\msvc40.if
  3145. The build cleansing procedure was issuing a bunch of warnings while running
  3146. the ifstrip tool. Get rid of them all.
  3147. -----------------------------------------------------------------
  3148. Thu 02-Dec-99 (PhilipLu)
  3149. libw32\msvcprt.src
  3150. VS7#66372 - The _RETAIN_OLD_CRT_CODE fix of Nov 14 was incomplete. All of
  3151. the exception class methods and vtables which are no longer dllimport must
  3152. be added as private exports in the .def file for msvcp*.dll so they will
  3153. not appear in the msvcprt*.lib import lib.
  3154. -----------------------------------------------------------------
  3155. Wed 01-Dec-99 (GautamB)
  3156. modified
  3157. crtw32\h\string.h
  3158. crtw32\misc\lsources, strerror.c, _strerr.c
  3159. add files
  3160. crtw32\misc\wcserror.c, _wcserr.c
  3161. VS#5706 Added wide char version for strerror() and _strerror()
  3162. -----------------------------------------------------------------
  3163. Wed 01-Dec-99 (rlanser)
  3164. crtw32\misc\ia64\chandler.c
  3165. [v-willc] Support for reordering blocks in a try scope.
  3166. -----------------------------------------------------------------
  3167. Wed 01-Dec-99 (PhilipLu)
  3168. makefile.sub
  3169. Enable CC_P7_SOFT25 when building for IA64.
  3170. -----------------------------------------------------------------
  3171. Wed 01-Dec-99 (GautamB)
  3172. crtw32\tchar.h
  3173. libw32\include\tchar.h
  3174. libw32\inc64\tchar.h
  3175. Add alias for _tpgmptr
  3176. -----------------------------------------------------------------
  3177. Tue 30-Nov-99 (PhilipLu)
  3178. crtw32\eh\i386\trnsctrl.cpp
  3179. crtw32\h\winheap.h
  3180. crtw32\heap\sbheap.c
  3181. crtw32\rtc\error.cpp, init.cpp, pdblkup.cpp
  3182. crtw32\startup\tlssup.c
  3183. crtw32\stdhpp\xlocale
  3184. crtw32\stdio\output.c
  3185. fpw32\tran\i386\filter.c, filter_simd.c
  3186. libw32\include\xlocale
  3187. Add casts, minor fixes, and #pragma warnings to compile cleanly on x86
  3188. with /Wp64.
  3189. crtw32\h\crtdbg.h
  3190. libw32\include\crtdbg.h
  3191. libw32\inc64\crtdbg.h
  3192. Forward declare _CrtMemBlockHeader to work around vs7#63059.
  3193. cleanbld.cmd, makefile, makefile.sub
  3194. Default to building release builds with debug info, and multiprocessor
  3195. compile for DLL. Get rid of makefile flags BLD_REL_DBINFO and _VCBUILD.
  3196. Add BLD_REL_NO_DBINFO to allow building release builds without debug info.
  3197. -----------------------------------------------------------------
  3198. Thu 18-Nov-99 (PhilipLu)
  3199. makefile, makefile.inc
  3200. crtw32\eh\lsources
  3201. crtw32\eh\dll\sources
  3202. crtw32\eh\i386\ehprolg2.c [NEW]
  3203. crtw32\eh\mt\sources
  3204. crtw32\eh\st\sources
  3205. crtw32\libw32\msvcrt.src, syscrt.src, syscrt64.src
  3206. srcrel\makefile, objects.mkf, pd-b
  3207. VS7#57098 - Add new compiler helper __EH_prolog2 as a static link component
  3208. whose source does not get shipped. Needed to handle stack frame creation
  3209. in a function compiled /Os with both a C++ EH frame and a stack that must
  3210. be aligned thanks to __declspec(align()) locals. Also changing the older
  3211. compiler helper __EH_prolog so it is always statically linked, instead of
  3212. being used from the CRT DLL.
  3213. -----------------------------------------------------------------
  3214. Wed 17-Nov-99 (GautamB)
  3215. crtw32\dostypes.h
  3216. Vs7#37766 Deleted this file as this file was not used anymore.
  3217. -----------------------------------------------------------------
  3218. Tue 16-Nov-99 (PhilipLu)
  3219. makefile, makefile.inc
  3220. crtw32\dllstuff\crtexe.c, lsources
  3221. crtw32\dllstuff\dlllib\sources
  3222. crtw32\startup\crt0.c, lsources
  3223. crtw32\startup\mt\sources
  3224. crtw32\startup\st\sources
  3225. doc\copysrc.bat
  3226. libw32\makefile
  3227. srcrel\msvc40.if, pd-b
  3228. [delfiled:]
  3229. crtw32\dllstuff\corexe.c, corexew.c, wcorexe.c, wcorexew.c
  3230. crtw32\startup\cor0.c, wcor0.c, wincor0.c, wwincor0.c
  3231. VS7#61850 (again) - The fix on 13-Nov won't work, because the linker must
  3232. choose an entrypoint before starting library searching, but may not know
  3233. if an app is COM+ until after it drags in a library object with metadata.
  3234. So back out the previous fix and implement a new one. On entry, search the
  3235. image header of the process EXE to see if the COM+ Descriptor entry in the
  3236. Image Directory is empty, and handle as a COM+ app if it not.
  3237. -----------------------------------------------------------------
  3238. Sun 14-Nov-99 (PhilipLu)
  3239. makefile
  3240. crtw32\stdcpp\instances.cpp
  3241. crtw32\stdhpp\exception, new, stdexcept, xlocinfo, xstring, yvals.h
  3242. crtw32\tools\win32\relinc.if
  3243. libw32\include\xlocinfo, yvals.h
  3244. Buildfix - msvcp70[d].dll must maintain all existing exports except at
  3245. major updates of the vcLKG toolset. Restore all the old exports which were
  3246. lost at the STL integration of 9-Nov-99. The functions corresponding to
  3247. these exports are reintroduced into the headers in stdhpp by placing them
  3248. under #if _RETAIN_OLD_CRT_CODE, which is only defined when compiling the
  3249. STL DLL. Also, this #if is cleansed from the headers by relinc.cmd, so
  3250. the released headers are unchanged and new code will not see any definition
  3251. of the old exports. Once we update vcLKG and VS is built with the new
  3252. headers, the old code under #if can be removed totally.
  3253. As part of this, removing private copy-ctor and assign-ops declarations
  3254. (without definitions) for _Locinfo and _Lockit, so the compiler generated
  3255. defaults again appear as exports. I originally added these definitions to
  3256. work around an integration problem which doesn't exist any longer.
  3257. crtw32\tools\win32\relinc.cmd, relinc64.cmd
  3258. Trivial cleanup - detabify and line up file.
  3259. -----------------------------------------------------------------
  3260. Sat 13-Nov-99 (PhilipLu)
  3261. makefile, makefile.inc
  3262. crtw32\dllstuff\corexe.c [NEW], corexew.c [NEW], crtexe.c, crtexew.c, lsources,
  3263. wcorexe.c [NEW], wcorexew.c [NEW], wcrtexe.c, wcrtexew.c
  3264. crtw32\dllstuff\dlllib\sources
  3265. crtw32\startup\ cor0.c [NEW], crt0.c, lsources, wcor0.c [NEW], wcrt0.c,
  3266. wincor0.c [NEW], wincrt0.c, wwincor0.c [NEW], wwincrt0.c
  3267. crtw32\startup\mt\sources
  3268. crtw32\startup\st\sources
  3269. doc\copysrc.bat
  3270. libw32\makefile
  3271. srcrel\pd-b
  3272. VS7#61850 - Apps using COM+ IJW, with a native CRT startup object linked to
  3273. a COM+ MSIL app, have to use a special COM+-aware version of the CRT
  3274. startup code. For now, all this code does differently is return back to
  3275. COM+ instead of calling exit(). Introduces 4 new entrypoints which the
  3276. linker knows about and uses when linking a COM+ app, with the basic name
  3277. being mainCorCRTStartup.
  3278. crtw32\h\internal.h, io.h, time.h, wchar.h
  3279. libw32\inc64\io.h, time.h, wchar.h
  3280. libw32\include\io.h, time.h, wchar.h
  3281. srcrel\msvc40.if
  3282. Wrap the definition of _time64_t under #ifndef _TIME64_T_DEFINED instead
  3283. of putting in under _TIME_T_DEFINED, so it's easier to mix and match VC6
  3284. and VC7 CRT headers.
  3285. -----------------------------------------------------------------
  3286. Fri 12-Nov-99 (GautamB)
  3287. crtw32\lowio\fstat64.c
  3288. crtw32\dos\stat64.c
  3289. VS7#57599 - Modified fstat64 and stat64 to take DST into account.
  3290. -----------------------------------------------------------------
  3291. Fri 12-Nov-99 (PhilipLu)
  3292. crtw32\misc\getqloc.c
  3293. Setlocale should first try to use the language string given before using
  3294. the substituted abbreviation from __rg_language[]. That's because there
  3295. are language names which map to multiple abbreviations. On NT5, language
  3296. 'Chinese' can be abbreviation CHS or CHT. Because of this, it's possible
  3297. to have setlocale(LC_ALL,setlocale(LC_ALL,NULL)) fail, even though setlocale
  3298. should always return a settings dump that is valid input to reset the
  3299. locale. If the substitution table is used first, then Chinese_Taiwan.950
  3300. will be searched for as CHS_Taiwan.950, but the LCID actually corresponds
  3301. to CHT_Taiwan.950. This happened because NT5 changed the language name
  3302. for Taiwan from 'Chinese(Taiwan)' to 'Chinese' (vs7#61130, ntbug#426382).
  3303. makefile, makefile.inc
  3304. crtw32\stdcpp\lsources, sources.nt
  3305. doc\copysrc.bat
  3306. doc\pjp\makefile, makefile.inc, pd-b
  3307. srcrel\pd-b
  3308. [delfiled:]
  3309. crtw32\stdcpp\delaop.cpp, delaop_s.cpp, delop.cpp, delop_s.cpp
  3310. VS7#5435 - C++ Library should not define its own one-arg versions of
  3311. operator delete/delete[] (the nothrow_t versions are OK). This was a
  3312. problem because the C++ Library version of delete called free, but in a
  3313. debug build, it should call _free_dbg in case we're not deleting a
  3314. _NORMAL_BLOCK. Rather than change the definitions, it makes more sense
  3315. just to get rid of them.
  3316. -----------------------------------------------------------------
  3317. Tue 09-Nov-99 (GautamB)
  3318. \crtw32\lowio\write.c
  3319. VS7#52023 - Fixed the bug by replacing lseek_lk by lseeki64_lk.
  3320. -----------------------------------------------------------------
  3321. Tue 09-Nov-99 (PhilipLu)
  3322. makefile, makefile.inc
  3323. \crtw32\eh\stdexcpt.cpp
  3324. \crtw32\stdcpp\cerr.cpp, cin.cpp, clog.cpp, cout.cpp, delaop.cpp,
  3325. delaop2.cpp [NEW], delaop2_s.cpp [NEW], delop.cpp, delop2.cpp [NEW],
  3326. delop2_s.cpp [NEW], fiopen.cpp, instances.cpp [NEW], iomanip.cpp, ios.cpp,
  3327. iosptrs.cpp, iostream.cpp, locale.cpp, locale0.cpp, lsources, newaop.cpp,
  3328. newaop2.cpp, newop2.cpp, nomemory.cpp, raisehan.cpp, sources.nt,
  3329. stdhndlr.cpp, stdthrow.cpp, string.cpp, strstrea.cpp, uncaught.cpp,
  3330. wcerr.cpp, wcin.cpp, wclog.cpp, wcout.cpp, wctrans.c, wctype.c,
  3331. wiostrea.cpp, wlocale.cpp, xcosh.c, xdnorm.c, xdscale.c, xdtest.c, xexp.c,
  3332. xfcosh.c, xfdnorm.c, xfdscale.c, xfdtest.c, xfexp.c, xfsinh.c, xfvalues.c,
  3333. xlcosh.c, xldnorm.c, xldscale.c, xldtest.c, xlexp.c, xlocale.cpp, xlpoly.c,
  3334. xlsinh.c, xlvalues.c, xmath.h, xpoly.c, xsinh.c, xstod.c, xvalues.c
  3335. \crtw32\stdhpp\algorithm, bitset, cassert, cctype, cerrno, cfloat, ciso646,
  3336. climits, clocale, cmath, complex, csetjmp, csignal, cstdarg, cstddef,
  3337. cstdio, cstdlib, cstring, ctime, cwchar, cwctype, deque, exception,
  3338. fstream, functional, hash_map, hash_set, iomanip, ios, iosfwd, iostream,
  3339. iso646.h, istream, iterator, limits, list, locale, map, memory, new,
  3340. numeric, ostream, queue, set, sstream, stack, stdexcept, streambuf, string,
  3341. strstream, utility, valarray, vector, xcomplex, xhash, xiosbase, xlocale,
  3342. xlocinfo, xlocinfo.h, xlocmes, xlocmon, xlocnum, xloctime, xmemory,
  3343. xstddef, xstring, xtree, xutility, ymath.h, yvals.h
  3344. \doc\copysrc.bat
  3345. \doc\pjp\makefile, makefile.inc, pd-b
  3346. \libw32\include\algorithm, bitset, cassert, cctype, cerrno, cfloat, ciso646,
  3347. climits, clocale, cmath, complex, csetjmp, csignal, cstdarg, cstddef,
  3348. cstdio, cstdlib, cstring, ctime, cwchar, cwctype, deque, exception,
  3349. fstream, functional, hash_map, hash_set, iomanip, ios, iosfwd, iostream,
  3350. iso646.h, istream, iterator, limits, list, locale, map, memory, new,
  3351. numeric, ostream, queue, set, sstream, stack, stdexcept, streambuf, string,
  3352. strstream, utility, valarray, vector, xcomplex, xhash, xiosbase, xlocale,
  3353. xlocinfo, xlocinfo.h, xlocmes, xlocmon, xlocnum, xloctime, xmath.h,
  3354. xmemory, xstddef, xstring, xtree, xutility, ymath.h, yvals.h
  3355. \srcrel\pd-b
  3356. [delfiled:]
  3357. crtw32\stdcpp\dlldef.cpp, limits.cpp
  3358. Integrate the 990718 drop of the C++ Library from Dinkumware.
  3359. -----------------------------------------------------------------
  3360. Tue 09-Nov-99 (GautamB)
  3361. crtw32\h\cmsgs.h
  3362. VS7#27275 - Fixed the message abort pops up.
  3363. -----------------------------------------------------------------
  3364. Tue 09-Nov-99 (PhilipLu)
  3365. crtw32\h\crtdbg.h
  3366. libw32\msvcrt.src, syscrt.src, syscrt64.src
  3367. libw32\include\crtdbg.h
  3368. libw32\inc64\crtdbg.h
  3369. VS7#16060 - Don't mark the debug operator new/new[] _CRTIMP in crtdbg.h,
  3370. and add them to the .def files so they still get exported. Makes it easier
  3371. for users to intercept these (something VSEE does).
  3372. -----------------------------------------------------------------
  3373. Mon 08-Nov-99 (PhilipLu)
  3374. crtw32\h\ctype.h, stdio.h, tchar.h, wchar.h
  3375. crtw32\stdcpp\wctrans.c
  3376. crtw32\stdhpp\wctype.h
  3377. crtw32\stdhpp64\wctype.h
  3378. libw32\include\ctype.h, stdio.h, tchar.h, wchar.h, wctype.h
  3379. libw32\inc64\ctype.h, stdio.h, tchar.h, wchar.h, wctype.h
  3380. Buildfix. New frontend enabled wchar_t as a native type, exposing bug in
  3381. definition of wctype_t. Was a wchar_t, but wctype_t is really an unsigned
  3382. short collection of bitflags.
  3383. fpw32\tran\i386\xmmi_fp_emul.c
  3384. KNI exception handler fixes from Intel.
  3385. -----------------------------------------------------------------
  3386. Fri 05-Nov-99 (PhilipLu)
  3387. crtw32\stdhpp64\xiosbase, xlocmon
  3388. libw32\inc64\xiosbase, xlocmon
  3389. Disable warning C4786 in a couple more files to fix IA64 build.
  3390. -----------------------------------------------------------------
  3391. Thu 04-Nov-99 (PhilipLu)
  3392. crtw32\h\string.h
  3393. libw32\include\string.h
  3394. libw32\inc64\string.h
  3395. Back out checkin for VS7#33641 - breaking too much existing code, need to
  3396. rethink if this will just be "won't fix". Leaving in the change I made to
  3397. wchar.h (moved the secondary definitions under the #ifndef _WSTRING_DEFINED)
  3398. so it should at least be safer to #include string.h and wchar.h together.
  3399. crtw32\h\crtdbg.h
  3400. libw32\include\crtdbg.h
  3401. libw32\inc64\crtdbg.h
  3402. Work around useless warning C4507. This warning is being removed, but it
  3403. needs to be ignored until we drop a compiler without it.
  3404. -----------------------------------------------------------------
  3405. Wed 03-Nov-99 (GautamB)
  3406. crtw32\stdio\output.c
  3407. VS7#5431 Deleted unnecessary #ifs for fixing the bug with L format
  3408. specifier used with wprintf.
  3409. -----------------------------------------------------------------
  3410. Wed 03-Nov-99 (PhilipLu)
  3411. crtw32\h\string.h, wchar.h
  3412. libw32\include\string.h, wchar.h
  3413. libw32\inc64\string.h, wchar.h
  3414. VS7#33641 - wcschr, wcsrchr, wcsstr, and wcspbrk must be defined in
  3415. string.h the same as in wchar.h, with two versions for C++.
  3416. crtw32\h\crtdbg.h, math.h
  3417. libw32\include\crtdbg.h, math.h
  3418. libw32\inc64\crtdbg.h, math.h
  3419. Place any C++ definitions within an extern "C++" block, so the header
  3420. can be safely included inside an extern "C" block. (Also for string.h
  3421. and wchar.h)
  3422. crtw32\h\internal.h, mbstring.h, stdio.h, wchar.h
  3423. libw32\include\mbstring.h, stdio.h, wchar.h
  3424. libw32\inc64\mbstring.h, stdio.h, wchar.h
  3425. Continuation of VS7#54572 - Add _M_CEE version of va_list definition to
  3426. all other files defining it, not just stdarg.h.
  3427. crtw32\h\cruntime.h
  3428. crtw32\tools\win32\relinc.sed
  3429. Get rid of unneeded _VA_LIST_T.
  3430. crtw32\startup\crt0.c, tidtable.c
  3431. crtw32\time\localtim.c
  3432. Checkins from RLanser. Fix some Win64 warnings in the _POSIX_ and
  3433. _NTSUBSET_ builds.
  3434. -----------------------------------------------------------------
  3435. Mon 01-Nov-99 (PhilipLu)
  3436. crtw32\eh\frame.cpp, hooks.cpp, throw.cpp, validate.cpp
  3437. crtw32\eh\i386\trnsctrl.cpp
  3438. crtw32\h\ehassert.h, mtdll.h, trnsctrl.h
  3439. VS7#5361 - A rethrow could lead to the thrown object being destroyed twice.
  3440. The C++ EH code would destroy a exception object on exit from a catch block
  3441. if the exit was not due to a rethrow, even if the exception object was from
  3442. a rethrow inside a catch we were nested in. The fix for this is x86-only,
  3443. since it introduces a FRAMEINFO linked list to track currently available
  3444. exception objects. All RISC platforms already have a FRAMEINFO list, but
  3445. use it in a different enough way that porting this fix requires more work.
  3446. In particular, I'm popping items from the FRAMEINFO list inside the
  3447. __finally handler in CallCatchBlock. All RISC platforms are instead doing
  3448. this in normal code in CatchIt, which I think is error-prone.
  3449. Also improved the /DENABLE_EHTRACE EH tracing dump using indenting to
  3450. indicate the depth on the callstack of the current function, and with more
  3451. data about what's actually being thrown/caught/destroyed/filtered/....
  3452. -----------------------------------------------------------------
  3453. Fri 29-Oct-99 (PhilipLu)
  3454. crtw32\h\math.h
  3455. libw32\include\math.h
  3456. libw32\inc64\math.h
  3457. VS7#22017 - add useful math constants a la UNIX's math.h, to make porting
  3458. easier.
  3459. crtw32\misc\ia64\jmpuwind.s
  3460. Bugfix for IA64 from TiborL.
  3461. crtw32\stdhpp64\utility
  3462. libw32\inc64\utility
  3463. Disable warning C4786, which appeared building dlldef.cpp for IA64 with a
  3464. new frontend.
  3465. -----------------------------------------------------------------
  3466. Thu 28-Oct-99 (Gautamb)
  3467. crtw32\h\tchar.h
  3468. libw32\include\tchar.h
  3469. libw32\inc64\tchar.h
  3470. VS7#5418 - fixed _tcsnextc() for handling MBCS.
  3471. -----------------------------------------------------------------
  3472. Thu 28-Oct-99 (PhilipLu)
  3473. crtw32\stdhpp\iosfwd
  3474. crtw32\stdhpp64\iosfwd
  3475. libw32\include\iosfwd
  3476. libw32\inc64\iosfwd
  3477. On Win64, std::streamoff and std::streamsize should be __int64, not long
  3478. and int.
  3479. crtw32\h\memory.h, string.h
  3480. crtw32\string\memccpy.c, memicmp.c
  3481. libw32\include\memory.h, string.h
  3482. libw32\inc64\memory.h, string.h
  3483. VS7#22416 - _memccpy, _memicmp and __ascii_memicmp should take a size_t
  3484. count, not an unsigned int.
  3485. crtw32\stdio\input.c
  3486. VS7#10705 - scanf format %p was totally broken on Win64.
  3487. -----------------------------------------------------------------
  3488. Wed 27-Oct-99 (Gautamb)
  3489. crtw32\lowio\fstat.c
  3490. crtw32\lowio\fstat64.c
  3491. crtw32\dos\stat.c
  3492. crtw32\dos\stat64.c
  3493. crtw32\time\ftime.c
  3494. crtw32\time\ftime64.c
  3495. crtw32\time\utime.c
  3496. crtw32\time\utime64.c
  3497. VS7#37766. Deleted the #include<dostypes.h> in all the file as it is of no
  3498. use.
  3499. -----------------------------------------------------------------
  3500. Wed 27-Oct-99 (GautamB)
  3501. crtw32\lowio\open.c
  3502. VS7#14742 Fixed the _sopen for opening the same by file in share as well as
  3503. O_TEMPORARY mode.
  3504. -----------------------------------------------------------------
  3505. Wed 27-Oct-99 (PhilipLu)
  3506. crtw32\misc\ia64\jmpuwind.s
  3507. New implementation of __jump_unwind for CC_P7_SOFT25 calling convention
  3508. on IA64 from TiborL.
  3509. cleanbld.cmd, makefile, makefile.inc, makefile.sub
  3510. crtw32\mbstring\lsources
  3511. crtw32\stdcpp\lsources
  3512. crtw32\stdcpp64\lsources [NEW]
  3513. More makefile tweaks:
  3514. * Repair in-place build for IA64.
  3515. * Fix dependency creation (nmake depend) for in-place build.
  3516. * Enable building with browser info under BLD_BROWSE=1.
  3517. * For x86 asm files whose source is not shipped, assemble files with full
  3518. pathnames, so a developer build (DEVBUILD=1) or in-place build will allow
  3519. debugger to automatically bring up asm source without an open file popup.
  3520. * add DELOBJ option to cleanbld.cmd to delete all objects before building,
  3521. but leaving all sources - avoids file copy/cleanse cycle.
  3522. * Use undocumented -ignore link switch to silence linker warnings. Switch
  3523. is cleansed from user-rebuild makefiles.
  3524. * Add "-N so" option to ias.exe invocation (equiv of -nologo).
  3525. crtw32\eh\frame.cpp, unhandld.cpp, validate.cpp
  3526. crtw32\eh\i386\ehcrt.mak [NEW]
  3527. crtw32\h\ehassert.h
  3528. Add an x86 version of ehcrt.mak, used to build the C++ EH support into a
  3529. stand-alone lib for test purposes. Tweak some EH support code to fix
  3530. problems in the stand-alone lib with ENABLE_EHTRACE on. Also added an
  3531. EHTRACE_FMT1 dump of the 'this' pointer to _DestructExceptionObject.
  3532. -----------------------------------------------------------------
  3533. Tue 26-Oct-99 (GautamB)
  3534. crtw32\h\ctype.h
  3535. crtw32\convert\isctype.c
  3536. libw32\include\ctype.h
  3537. libw32\inc64\ctype.h
  3538. libw32\msvcrt.src
  3539. libw32\syscrt.src
  3540. libw32\syscrt64.src
  3541. VS7#5695 - Added additional function for debug version to check the
  3542. validity of call for character checking functions
  3543. -----------------------------------------------------------------
  3544. Mon 25-Oct-99 (PhilipLu)
  3545. crtw32\h\setjmp.h, stdarg.h, varargs.h
  3546. crtw32\tools\win32\relinc.if
  3547. libw32\include\setjmp.h, stdarg.h, varargs.h
  3548. libw32\inc64\setjmp.h, stdarg.h, varargs.h
  3549. srcrel\msvc40.if
  3550. VS7#54572 - Add _M_CEE support for varargs to stdarg.h, issue error if
  3551. varargs.h or setjmp.h used with _M_CEE.
  3552. VS7#51838 - Fix varargs.h for IA64.
  3553. -----------------------------------------------------------------
  3554. Mon 25-Oct-99 (PhilipLu)
  3555. makefile, makefile.inc, makefile.sub, mk.bat
  3556. crtw32\dllstuff\lsources
  3557. crtw32\eh\lsources
  3558. crtw32\heap\lsources
  3559. crtw32\iostream\lsources
  3560. crtw32\startup\lsources
  3561. crtw32\stdcpp\lsources [NEW]
  3562. Repair in-place build to build\<arch> in the source tree, for development
  3563. use. Faster than copy-and-cleanse build used for released CRTs, and allows
  3564. building isolated CRT versions (st, mt, dll, xst, xmt, xdll). Also fixes
  3565. to allow using CFLAGS or AFLAGS as nmake args to specify compiler/assembler
  3566. flags for special builds.
  3567. crtw32\eh\frame.cpp, hooks.cpp, validate.cpp
  3568. crtw32\eh\i386\trnsctrl.cpp
  3569. crtw32\h\ehassert.h
  3570. Implement EH tracing, debug output recording path through EH support
  3571. routines. Need to compile special CRT with /DENABLE_EHTRACE to turn this
  3572. on. See EHTRACE_* macros in ehassert.h.
  3573. -----------------------------------------------------------------
  3574. Fri 22-Oct-99 (PhilipLu)
  3575. crtw32\eh\frame.cpp, rtti.cpp
  3576. crtw32\eh\ia64\ehstate.cpp, trnsctrl.cpp
  3577. IA64 exception handling changes from TiborL.
  3578. -----------------------------------------------------------------
  3579. Fri 22-Oct-99 (PhilipLu)
  3580. makefile.inc
  3581. crtw32\heap\delete.cpp, delete2.cpp [NEW], heap.mkf, lsources
  3582. crtw32\heap\dll\sources
  3583. crtw32\heap\mt\sources
  3584. crtw32\heap\st\sources
  3585. crtw32\misc\dbgdel.cpp
  3586. doc\copysrc.bat
  3587. srcrel\pd-b
  3588. VS7#53440 - operator delete and operator delete[] must be implemented in
  3589. separate files, to avoid multiple definition link errors if user only
  3590. supplies definition for one of the two. Also, only need one definition
  3591. of delete[], in delete2.cpp, so get rid of the debug definition in
  3592. dbgdel.cpp.
  3593. -----------------------------------------------------------------
  3594. THU 21-Oct-99 <rlanser>
  3595. crtw32\eh\sources.nt
  3596. Binl is a C++ flag for the libcntpr build. Changed for IA64.
  3597. -----------------------------------------------------------------
  3598. THU 21-Oct-99 <GautamB>
  3599. crtw32\misc\assert.c
  3600. VS7#4731 Fixed the way the output of the filenames that were too long
  3601. was displayed.
  3602. -----------------------------------------------------------------
  3603. Mon 18-Oct-99 (PhilipLu)
  3604. makefile.inc
  3605. crtw32\h\internal.h, rtcpriv.h
  3606. crtw32\lowio\osfinfo.c
  3607. crtw32\misc\initcrit.c [NEW], lsources
  3608. crtw32\misc\dll\sources
  3609. crtw32\misc\mt\sources
  3610. crtw32\misc\psx\sources
  3611. crtw32\misc\st\sources
  3612. crtw32\startup\mlock.c
  3613. crtw32\stdio\stream.c
  3614. doc\copysrc.bat
  3615. srcrel\pd-b
  3616. VS7#49164, NtBug#413400 - Where available (NT4SP3 or better), set a
  3617. spin count on critical sections when they are initialized. Also detect
  3618. exceptions raised by InitializeCriticalSection.
  3619. fpw32\tran\i386\filter.c
  3620. VS7#5422 - Push/pop FP register save area when fixing up an FP exception,
  3621. instead of just incrementing/decrementing the Top counter.
  3622. crtw32\eh\frame.cpp
  3623. VS7#5419 - During unwind, set EH state before entering each unwind funclet,
  3624. instead of once after all funclets called, to better handle case of SEH
  3625. during unwind.
  3626. srcrel\makefile
  3627. srcrel\mkclnmkf.c
  3628. Add -noclean option to mkclnmkf, triggered by set NOCLEAN=1, to copy all
  3629. source files to build tree instead of cleansing them. Preparation for
  3630. getting -DDEBUG working again.
  3631. -----------------------------------------------------------------
  3632. Tue 12-Oct-99 (PhilipLu)
  3633. fpw32\tran\i386\filter.c
  3634. VS7#6472 - Prevent _fpieee_flt from overwriting exception handling stack
  3635. frame when an FP instruction exception was writing to a no-longer-existing
  3636. stack local.
  3637. -----------------------------------------------------------------
  3638. Mon 11-Oct-99 (KFrei)
  3639. crtw32\rtc\init.cpp
  3640. VS7#48979 - fix bug in removing image from list of active RTC images during
  3641. shutdown.
  3642. -----------------------------------------------------------------
  3643. Mon 11-Oct-99 (PhilipLu)
  3644. crtw32\heap\sbheap.c
  3645. libw32\msvcrt.src, syscrt.src, syscrt64.src
  3646. VS7#49546 - Win64 build must define stubs for _{get,set}_sbh_threshold,
  3647. even though small block heap is disabled there.
  3648. -----------------------------------------------------------------
  3649. Mon 11-Oct-99 (PhilipLu)
  3650. fpw32\tran\ia64\frnd.s
  3651. VS7#15807 - Port new implementation of _frnd from CRT 64 sourcesafe tree.
  3652. Old version failed whenever abs(arg) >= 2^63.
  3653. crtw32\misc\ia64\chandler.c, cinitone.s, jmpuwind.s, longjmp.s, memcpys.s,
  3654. memsets.s, miscs.s, setjmp.s, setjmpex.s
  3655. crtw32\startup\ia64\chkstk.s, fp8.c
  3656. fpw32\tran\ia64\asincosf.c, atan2f.c, atanf.c, ceilf.c, em_types.h, emfloat.s,
  3657. expf.c, fabsf.c, filter.c, floorf.c, fmodf.c, fp80.s, fp80c.c, fpctrl.c,
  3658. fpieee_flt.h, frnd.s, huge.s, ieee.c, log10f.c, logf.c, powf.c, sincosf.c,
  3659. sincoshf.c, sqrtf.c, tanf.c, tanhf.c
  3660. Intel has given permission to check the IA64-specific routines into the
  3661. main CRT tree, so these files have been addfiled from the SLM project at
  3662. \\lang3\p7!crt_ia64_asm.
  3663. -----------------------------------------------------------------
  3664. Thu 07-Oct-99 (PhilipLu)
  3665. crtw32\eh\ia64\trnsctrl.cpp
  3666. Port SHanson change from CRT 64 sourcesafe tree. utc_p7#1126: sysmode
  3667. test eh\extest fails /Ox.
  3668. -----------------------------------------------------------------
  3669. Thu 07-Oct-99 (PhilipLu)
  3670. crtw32\h\crtdbg.h, direct.h, heap.h, internal.h, io.h, malloc.h, mbstring.h,
  3671. memory.h, mtdll.h, new.h, nlsint.h, process.h, search.h, stdarg.h,
  3672. stddef.h, stdexcpt.h, stdio.h, stdlib.h, string.h, time.h, wchar.h
  3673. fpw32\include\trans.h
  3674. libw32\include\crtdbg.h, direct.h, io.h, malloc.h, mbstring.h, memory.h, new.h,
  3675. process.h, search.h, stdarg.h, stddef.h, stdexcpt.h, stdio.h, stdlib.h,
  3676. string.h, time.h, wchar.h
  3677. libw32\inc64\crtdbg.h, direct.h, io.h, malloc.h, mbstring.h, memory.h, new.h,
  3678. process.h, search.h, stdarg.h, stddef.h, stdexcpt.h, stdio.h, stdlib.h,
  3679. string.h, time.h, wchar.h
  3680. srcrel\msvc40.if
  3681. VS7#29043 - Update CRTs to support /Wp64 by adding __w64 modifier as
  3682. appropriate to typedefs of size_t, ptrdiff_t, time_t, intptr_t, uintptr_t.
  3683. crtw32\misc\dbgheap.c
  3684. VS7#5677 - Debug heap output needs to use %p when outputting pointers, %Iu
  3685. when outputting size_t data.
  3686. crtw32\stdio\fdopen.c, fopen.c, tmpfile.c
  3687. VS7#16832 - Set errno to EMFILE when fopen and related functions run out
  3688. of streams.
  3689. fpw32\conv\cfin.c, fltinf.c
  3690. VS7#5672 - Prevent underflow exception during strtod by copying bytes
  3691. instead of a double (which might use FP instrs) in _fltin.
  3692. -----------------------------------------------------------------
  3693. Thu 30-Sep-99 (PhilipLu)
  3694. crtw32\time\tzset.c
  3695. Fix double-free bug in tzset() when freeing lastTZ (ntbug#390281).
  3696. crtw32\heap\heapinit.c
  3697. Change handling of env var __MSCVRT_HEAP_SELECTED in heap init - don't
  3698. use any routine that requires the heap to be available (vs7#44259). Also,
  3699. check the env var before checking for NT5.0 or better, so we can change
  3700. heap selection even on Win2000 (only here, not in the CRT60a tree used
  3701. to build the Win2K system CRT).
  3702. -----------------------------------------------------------------
  3703. Wed 29-Sep-99 (PhilipLu)
  3704. Port recent fixes from CRT 64 SourceSafe tree:
  3705. crtw32\makefile.sub
  3706. Build IA64 with cl flags /QIA64_A0 and /Zx (release only), and ias flag
  3707. -X explicit.
  3708. crtw32\misc\ia64\setjmp.s
  3709. All branch registers weren't being saved.
  3710. crtw32\misc\ia64\longjmp.s
  3711. Fix RSE hazard.
  3712. -----------------------------------------------------------------
  3713. Thu 23-Sep-99 (PhilipLu)
  3714. crtw32\stdhpp64\xlocnum
  3715. libw32\inc64\xlocnum
  3716. Fix previous checkin - use %Id, not %Ld, to sprintf an __int64.
  3717. -----------------------------------------------------------------
  3718. Fri 17-Sep-99 (PhilipLu)
  3719. crtw32\stdhpp64\istream, ostream, xlocnum
  3720. libw32\inc64\istream, ostream, xlocnum
  3721. VS7#5291 - backport __int64 support for iostream << and >> to the old
  3722. 64-bit C++ headers.
  3723. crtw32\eh\typname.cpp
  3724. crtw32\stdhpp64\xlocale
  3725. libw32\inc64\xlocale
  3726. Add typecasts to fix 64-bit warnings with newest IA64 compiler.
  3727. -----------------------------------------------------------------
  3728. Thu 02-Sep-99 (PhilipLu)
  3729. langapi\undname\undname.cxx, undname.inl
  3730. Attempt to fix VS7#23225 - reports that undecorator suballocator in
  3731. HeapManager::getMemory is causing unaligned allocations. Make sure that
  3732. Win32 and Win64 CRT versions of the undecorator use 8 byte alignment
  3733. (should have been happening already anyway, but make more explicit), and
  3734. that an attempt to suballocate 0 bytes will not trigger unaligned
  3735. allocations (but I can't see anywhere that would try to allocate 0 bytes).
  3736. langapi\undname\stubmain.cxx, testundn.cxx
  3737. Fix build of stand-along undecorator and undecorator verifier test app
  3738. using the CRT __unDName.
  3739. makefile
  3740. srcrel\msvc40.if
  3741. Define _SYSCRT when doing a system CRT build.
  3742. crtw32\dllstuff\crtlib.c
  3743. Noticed by RichardS - CRT DLL issues a popup and refuses to run if started
  3744. on Win32s. The popup references "MSVCRT.DLL". Change to do this for
  3745. system CRT only, since the name for the VC CRT DLL is different and there's
  3746. no good reason to keep checking for Win32s there.
  3747. -----------------------------------------------------------------
  3748. Mon 30-Aug-99 (PhilipLu)
  3749. makefile, makefile.inc
  3750. crtw32\dllstuff\lsources, wdll_av.c [NEW]
  3751. crtw32\dllstuff\dlllib\sources
  3752. doc\copysrc.bat
  3753. libw32\makefile
  3754. srcrel\pd-b
  3755. VS7#5425 - ___wsetargv was missing from msvcrt[d].lib, so linking with
  3756. wsetargv.obj when using the CRT DLL gave a link error. Add new source
  3757. file wdll_av.c corresponding to the ANSI version dll_argv.c.
  3758. -----------------------------------------------------------------
  3759. Mon 30-Aug-99 (PhilipLu)
  3760. Minor issues uncovered during Y2K code review
  3761. crtw32\time\ctime.c, ctime64.c, difftime.c, systime.c
  3762. Fix function header comments.
  3763. crtw32\time\mktime.c
  3764. Replace 'long' with 'time_t'.
  3765. crtw32\time\strftime.c
  3766. Don't overflow buffer on finding mbcs leadbyte in store_winword.
  3767. crtw32\h\crtdbg.h
  3768. libw32\inc64\crtdbg.h
  3769. libw32\include\crtdbg.h
  3770. Remove unprintable character from comment (confused 'findstr /p').
  3771. -----------------------------------------------------------------
  3772. Thu 12-Aug-99 (v-JohnMo)
  3773. fpw32\tran\lsources,sources.nt
  3774. Alpha/Alpha64: build using correct FP support flags
  3775. fpw32\tran\alpha\dpml_exc.c
  3776. Alpha/Alpha64: remove unneeded declaration
  3777. fpw32\tran\alpha\getsetrg.c
  3778. Alpha/Alpha64: supply default return value to avoid warning
  3779. libw32\msvcrt.src
  3780. Alpha/Alpha64: export new UTC compiler helper functions
  3781. -----------------------------------------------------------------
  3782. Wed 11-Aug-99 (PhilipLu for v-ABorni)
  3783. makefile.inc
  3784. crtw32\helper\lsources, sources.nt
  3785. crtw32\helper\alpha\memcmp_.s [NEW], otsnote.txt
  3786. srcrel\objects.mkf, pd-b
  3787. Alpha/Alpha64: add new memcmp intrinsic.
  3788. -----------------------------------------------------------------
  3789. Wed 11-Aug-99 (PhilipLu for RLanser, SHanson)
  3790. Porting recent checkins to the CRT64 sourcesafe tree
  3791. makefile.sub
  3792. crtw32\misc\ia64\setjmp.s
  3793. Hazard fixes. Requires new Intel assembler (1.7) that checks for hazards.
  3794. crtw32\misc\ia64\miscs.s
  3795. Remove InterlockedExchangeAdd() since it's an intrinsic.
  3796. crtw32\eh\ehvecctr.cpp, ehveccvb.cpp, ehvecdtr.cpp, frame.cpp
  3797. crtw32\eh\ia64\trnsctrl.cpp
  3798. IA64 EH image relative changes (SW 2.5 convention) under
  3799. #if defined(CC_P7_SOFT25).
  3800. -----------------------------------------------------------------
  3801. Tue 10-Aug-99 (PhilipLu for RichardS)
  3802. crtw32\h\sect_attribs.h
  3803. crtw32\rtc\initsect.cpp
  3804. Use external symbols for RTC initializer/terminator table boundaries for
  3805. BBT support.
  3806. -----------------------------------------------------------------
  3807. Mon 09-Aug-99 (PhilipLu)
  3808. makefile
  3809. libw32\msvcirt.rc, msvcirt.src, msvcrt.src, syscrt.rc [NEW], syscrt.src [NEW],
  3810. syscrt64.rc [NEW], syscrt64.src [NEW], sysirt.rc [NEW], sysirt.src [NEW],
  3811. sysirt64.rc [NEW], sysirt64.src [NEW], sysprt.rc [NEW], sysprt.src [NEW],
  3812. sysprt64.rc [NEW], sysprt64.src [NEW]
  3813. srcrel\external.mkf, makefile, mkclnmkf.c, objects.mkf, pd-b, relmkf.sed
  3814. Complete configuration of build for system CRT. Building with BLD_SYSCRT=1
  3815. will build the system CRT instead of the VC crt. Building with LLP64=1
  3816. implies building a system CRT, but for Win64 instead of Win32. Addfiled
  3817. new .rc/.src files specific to Win32-system and Win64-system CRTs.
  3818. -----------------------------------------------------------------
  3819. Wed 04-Aug-99 (PhilipLu)
  3820. makefile
  3821. libw32\msvcirt.rc, msvcirt.src, msvcprt.rc [NEW], msvcprt.src, msvcrt.rc,
  3822. msvcrt.src
  3823. srcrel\_sample_.rc, external.mkf, mkclnmkf.c, objects.mkf, pd-b, relmkf.sed
  3824. Rename CRT: msvcrt.dll -> msvcr70.dll
  3825. msvcrtd.dll -> msvcr70d.dll
  3826. msvcp61.dll -> msvcp70.dll
  3827. msvcp61d.dll -> msvcp70d.dll
  3828. msvcirt.dll -> msvci70.dll
  3829. msvcirtd.dll -> msvci70d.dll
  3830. Also began configuration for build with BLD_SYSCRT=1 to build the system
  3831. CRT instead of the VC crt. This is not complete yet.
  3832. [delfiled:]
  3833. libw32\msvcp42.rc, msvcp50.rc, msvcp60.rc, msvcp61.rc
  3834. Replaced by msvcprt.rc
  3835. crtw32\misc\setenv.c
  3836. Fix use-after-free bug in __crtsetenv() when removing an existing
  3837. enviroment variable.
  3838. crtw32\stdio\vsprintf.c, vswprint.c
  3839. Minor function header fix
  3840. -----------------------------------------------------------------
  3841. Wed 04-Aug-99 (KFrei)
  3842. crtw32\h\rtcsup.h rtcpriv.h
  3843. crtw32\rtc\bintree.cpp chsyheap.cpp memory.cpp shadow.cpp init.cpp
  3844. crtw32\misc\i386\chkesp.c
  3845. crtw32\misc\alpha\chkesp.c
  3846. Added _RTC_ to all external objects. Added comments to keep versioning
  3847. issues in your face. Fixed some seriously leaking handles in the init code
  3848. -----------------------------------------------------------------
  3849. Fri 09-Jul-99 (GregF)
  3850. crtw32\h\winheap.h
  3851. crtw32\heap\calloc.c, expand.c, free.c, heapchk.c, heapinit.c, heapmin.c,
  3852. malloc.c, msize.c, realloc.c, sbheap.c
  3853. crtw32\misc\dbgheap.c
  3854. Removed VC 5.0 small-block heap, and the selection logic to enable it, from
  3855. the static libraries. This was intended only for the DLL which was not
  3856. affected by this change.
  3857. -----------------------------------------------------------------
  3858. Wed 07-Jul-99 (GregF)
  3859. crtw32\dllstfull\crtlib.c
  3860. Don't clean up system resources if the process is known to be terminating.
  3861. This fixes VS7 #16829
  3862. -----------------------------------------------------------------
  3863. Wed 16-Jun-99 (PhilipLu)
  3864. makefile
  3865. makefile.sub
  3866. Partially back out checkin of 8-Jun-99. Release build no longer built by
  3867. default with debug info. Necessary until I can get the build lab to drop
  3868. the associated PDBs along with the libs and dlls. Debug info for release
  3869. build can be selected by setting BLD_REL_DBINFO in the environment.
  3870. -----------------------------------------------------------------
  3871. Mon 14-Jun-99 (PhilipLu)
  3872. crtw32\tools\win32\relinc.if
  3873. libw32\include\rtcapi.h
  3874. libw32\inc64\rtcapi.h
  3875. Cleanse #ifdef _RTC from header rtcapi.h, with _RTC on (vs7#22400).
  3876. makefile
  3877. makefile.sub
  3878. srcrel\pd-b
  3879. Fix use of whackline.exe in Alpha build (vs7#23911).
  3880. -----------------------------------------------------------------
  3881. Thu 10-Jun-99 (GregF)
  3882. crtw32\time\tzset.c
  3883. Fixed handling of non-existent or empty TZ environment variable. This
  3884. fixes VS7 #16203.
  3885. -----------------------------------------------------------------
  3886. Tue 08-Jun-99 (PhilipLu)
  3887. makefile
  3888. makefile.sub
  3889. libw32\tools\alpha\whackline.exe [NEW]
  3890. BBT/Vulcan support - build debug and release targets with full debug info,
  3891. running whackline over objs for which we don't ship source. This gets rid
  3892. of the need to have a separate bbt target, but the bbt target remains until
  3893. the build lab switches to using the release target instead. Also, if built
  3894. with DEVBUILD=1 in the environment, whackline won't be run, so full line
  3895. number info is available for all sources, allowing developer builds to step
  3896. into these routines.
  3897. -----------------------------------------------------------------
  3898. Mon 07-Jun-99 (PhilipLu)
  3899. crtw32\h\float.h
  3900. crtw32\startup\ia64\fp8.c
  3901. libw32\include\float.h
  3902. libw32\inc64\float.h
  3903. For IA64, default to _PC_64 bit mode, not _PC_53.
  3904. crtw32\h\math.h
  3905. libw32\include\math.h
  3906. libw32\inc64\math.h
  3907. modff and hypotf are intrinsics for IA64 (vs7#2515).
  3908. crtw32\h\process.h
  3909. libw32\include\process.h
  3910. libw32\inc64\process.h
  3911. The oldnames (!__STDC__) versions of the exec/spawn APIs need to use
  3912. intptr_t, not int, for the handle arg/return vals, same as the real APIs.
  3913. [delfile:]
  3914. libw32\tools\ia64\aliasobj.exe, detab.exe, ifstrip.exe, pd.exe, striphdr.exe,
  3915. tolwrupr.exe, trailing.exe
  3916. These are actually x86 executables. The x86-based cross-build for IA64
  3917. now pulls these tools from libw32\tools\i386, as it should, so these are
  3918. no longer needed. Once we have native IA64 builds, the IA64 executables
  3919. will go here.
  3920. srcrel\pd-b
  3921. Remove libw32\tools\{ia64,ppc,mips}\*.exe. The ppc and mips tools were
  3922. delfiled a while ago by Rich Shupak.
  3923. srcrel\makefile
  3924. Fix typo for Alpha64 build ("!else if" should be "!elseif")
  3925. -----------------------------------------------------------------
  3926. Thu 03-Jun-99 (PhilipLu)
  3927. makefile
  3928. Fix oldnames.lib build for IA64.
  3929. crtw32\h\float.h
  3930. libw32\inc64\float.h
  3931. libw32\include\float.h
  3932. Define _CW_DEFAULT for IA64 (vs7#22100).
  3933. libw32\inc64\rtcapi.h
  3934. libw32\inc64\typeinfo.h
  3935. Pick up Win64 cleansed headers from recent checkins.
  3936. -----------------------------------------------------------------
  3937. Wed 02-Jun-99 (PhilipLu)
  3938. crtw32\convert\mbstowcs.c, mbtowc.c, wcstombs.c
  3939. fpw32\tran\alpha\filter.c
  3940. Warning fixes from v-kimpe for _NTSUBSET_ and Alpha build.
  3941. -----------------------------------------------------------------
  3942. Wed 02-Jun-99 (GregF)
  3943. crtw32\h\internal.h
  3944. crtw32\misc\putenv.c, setenv.c
  3945. Fixed several leaks which manifested in _putenv(). A copy of the arg
  3946. string is made in _putenv first thing, but it was not subsequently freed
  3947. in some cases when it should have been. This fixes VS7 #18971.
  3948. -----------------------------------------------------------------
  3949. Tue 01-Jun-99 (PhilipLu)
  3950. makefile.inc
  3951. crtw32\eh\stdexcpt.cpp
  3952. crtw32\h\internal.h, typeinfo.h
  3953. crtw32\stdcpp\cerr.cpp, cin.cpp, clog.cpp, cout.cpp, delaop.cpp, delop.cpp,
  3954. dlldef.cpp, fiopen.cpp, iomanip.cpp, ios.cpp, iosptrs.cpp, iostream.cpp,
  3955. locale.cpp, locale0.cpp, newaop.cpp, newaop2.cpp, newop.cpp, newop2.cpp,
  3956. nomemory.cpp, raisehan.cpp [NEW], sources.nt, stdhndlr.cpp [NEW],
  3957. stdthrow.cpp, string.cpp, strstrea.cpp, uncaught.cpp, wcerr.cpp, wcin.cpp,
  3958. wclog.cpp, wcout.cpp, wctrans.c, wctype.c, wiostrea.cpp, wlocale.cpp,
  3959. xcosh.c, xdnorm.c, xdscale.c, xdtest.c, xexp.c, xfcosh.c, xfdnorm.c,
  3960. xfdscale.c, xfdtest.c, xfexp.c, xfsinh.c, xfvalues.c, xlcosh.c, xldnorm.c,
  3961. xldscale.c, xldtest.c, xlexp.c, xlocale.cpp, xlock.cpp, xlpoly.c, xlsinh.c,
  3962. xlvalues.c, xmath.h, xpoly.c, xsinh.c, xstod.c, xstrcoll.c, xvalues.c
  3963. crtw32\stdhpp\algorithm, bitset, cassert, cctype, cerrno, cfloat, ciso646,
  3964. climits, clocale, cmath, complex, csetjmp, csignal, cstdarg, cstddef,
  3965. cstdio, cstdlib, cstring, ctime, cwchar, cwctype, deque, exception, fstream,
  3966. functional, hash_map, hash_set, iomanip, ios, iosfwd, iostream, iso646.h,
  3967. istream, iterator, limits, list, locale, map, memory, new, numeric, ostream,
  3968. queue, set, sstream, stack, stdexcept, streambuf, string, strstream,
  3969. utility, valarray, vector, xcomplex, xhash, xiosbase, xlocale, xlocinfo,
  3970. xlocinfo.h, xlocmes, xlocmon, xlocnum, xloctime, xmemory, xstddef, xstring,
  3971. xtree, xutility, ymath.h, yvals.h
  3972. doc\copysrc.bat
  3973. doc\pjp\makefile.inc, pd-b
  3974. libw32\include\algorithm, bitset, cassert, cctype, cerrno, cfloat, ciso646,
  3975. climits, clocale, cmath, complex, csetjmp, csignal, cstdarg, cstddef,
  3976. cstdio, cstdlib, cstring, ctime, cwchar, cwctype, deque, exception, fstream,
  3977. functional, hash_map, hash_set, iomanip, ios, iosfwd, iostream, iso646.h,
  3978. istream, iterator, limits, list, locale, map, memory, new, numeric, ostream,
  3979. queue, set, sstream, stack, stdexcept, streambuf, string, strstream,
  3980. typeinfo.h, utility, valarray, vector, xcomplex, xhash, xiosbase, xlocale,
  3981. xlocinfo, xlocinfo.h, xlocmes, xlocmon, xlocnum, xloctime, xmath.h, xmemory,
  3982. xstddef, xstring, xtree, xutility, ymath.h, yvals.h
  3983. srcrel\pd-b
  3984. Integrate 05/03/99 drop of STL from Plauger.
  3985. -----------------------------------------------------------------
  3986. Wed 26-May-99 (KFrei)
  3987. crtw32\h\rtcapi.h, rtcpriv.h, rtcsup.h
  3988. crtw32\heap\calloc.c, delete.cpp, expand.c, free.c, malloc.c, new.cpp, new2.cpp,
  3989. realloc.c
  3990. crtw32\misc\dbgdel.cpp, dbgheap.c, dbgnew.cpp, i386\chkesp.c
  3991. crtw32\rtc\bintree.cpp, callsite.cpp, chsyheap.cpp, contain.cpp, error.cpp,
  3992. fileio.cpp, init.cpp, memory.cpp, pdblkup.cpp, shadow.cpp, userapi.cpp
  3993. crtw32\stdcpp\delaop.cpp, delop.cpp, newaop.cpp, newaop2.cpp, newop.cpp,
  3994. newop2.cpp
  3995. crtw32\tools\win32\relinc.if
  3996. libw32\include\rtcapi.h
  3997. srcrel\msvc40.if
  3998. Remove /RTCl and /RTCv, add /RTCu. Put shadow mem stuff under _RTC_ADVMEM,
  3999. which is disabled. Clean up names to always use _RTC_ prefix. Simplify
  4000. _RTC_Allocate_hook.
  4001. -----------------------------------------------------------------
  4002. Fri 21-May-99 (PhilipLu)
  4003. makefile
  4004. Link IA64 xdll targets /debugtype:both. Also add -osversion link switches
  4005. used for other Win64 dll targets to the zdll (BBT) target too.
  4006. -----------------------------------------------------------------
  4007. Thu 20-May-99 (PhilipLu)
  4008. crtw32\eh\ehveccrt.cpp, ehveccvb.cpp, ehvecdtr.cpp
  4009. Turn off __thiscall for IA64.
  4010. makefile
  4011. srcrel\external.mkf, mkclnmkf.c, objects.mkf, pd-b
  4012. Build msvcp60.dll for Win64, not msvcp61.dll.
  4013. -----------------------------------------------------------------
  4014. Thu 20-May-99 (PhilipLu)
  4015. [addfiled:]
  4016. crtw32\tools\win32\relinc64.cmd
  4017. libw32\inc64\algorithm, assert.h, bitset, cassert, cctype, cerrno, cfloat,
  4018. ciso646, climits, clocale, cmath, complex, conio.h, crtdbg.h, csetjmp,
  4019. csignal, cstdarg, cstddef, cstdio, cstdlib, cstring, ctime, ctype.h, cwchar,
  4020. cwctype, deque, direct.h, dos.h, eh.h, errno.h, exception, excpt.h, fcntl.h,
  4021. float.h, fpieee.h, fstream, fstream.h, functional, io.h, iomanip, iomanip.h,
  4022. ios, ios.h, iosfwd, iostream, iostream.h, iso646.h, istream, istream.h,
  4023. iterator, limits, limits.h, list, locale, locale.h, malloc.h, map, math.h,
  4024. mbctype.h, mbstring.h, memory, memory.h, minmax.h, new, new.h, numeric,
  4025. ostream, ostream.h, process.h, queue, rtcapi.h, search.h, set, setjmp.h,
  4026. setjmpex.h, share.h, signal.h, sstream, stack, stdarg.h, stddef.h,
  4027. stdexcept, stdexcpt.h, stdio.h, stdiostr.h, stdlib.h, stl.h, streamb.h,
  4028. streambuf, string, string.h, strstrea.h, strstream, tchar.h, time.h,
  4029. typeinfo, typeinfo.h, use_ansi.h, useoldio.h, utility, valarray, varargs.h,
  4030. vector, wchar.h, wctype.h, xcomplex, xiosbase, xlocale, xlocinfo,
  4031. xlocinfo.h, xlocmon, xlocnum, xloctime, xmath.h, xmemory, xstddef, xstring,
  4032. xtree, xutility, ymath.h, yvals.h
  4033. libw32\inc64\sys\locking.h, stat.h, timeb.h, types.h, utime.h
  4034. Cleansed headers for Win64 build. This should be temporary - delete once
  4035. NT5 ships and Win32 and Win64 builds start using same STL headers.
  4036. srcrel\makefile, pd-b
  4037. Handle new libw32\inc64 files for Win64 build.
  4038. -----------------------------------------------------------------
  4039. Thu 20-May-99 (PhilipLu)
  4040. crtw32\misc\dbgheap.c
  4041. Don't DebugBreak if heap allocation counter wraps around back to -1
  4042. (vs7#5363).
  4043. -----------------------------------------------------------------
  4044. Wed 19-May-99 (PhilipLu)
  4045. [addfiled:]
  4046. crtw32\stdcpp64\_tolower.c, _toupper.c, delop.cpp, delop_s.cpp, dirs,
  4047. dlldef.cpp, fiopen.cpp, iomanip.cpp, ios.cpp, iostream.cpp, locale.cpp,
  4048. locale0.cpp, newop.cpp, newop2.cpp, newop2_s.cpp, newop_s.cpp,
  4049. nomemory.cpp, sources.nt, string.cpp, strstrea.cpp, uncaught.cpp,
  4050. wctrans.c, wctype.c, wiostrea.cpp, wlocale.cpp, xcosh.c, xdnorm.c,
  4051. xdscale.c, xdtest.c, xexp.c, xfcosh.c, xfdnorm.c, xfdscale.c, xfdtest.c,
  4052. xfexp.c, xfsinh.c, xfvalues.c, xlcosh.c, xldnorm.c, xldscale.c, xldtest.c,
  4053. xlexp.c, xlocale.cpp, xlock.cpp, xlpoly.c, xlsinh.c, xlvalues.c, xmath.h,
  4054. xmbtowc.c, xpoly.c, xsinh.c, xstod.c, xstrcoll.c, xstrxfrm.c, xvalues.c,
  4055. xwcscoll.c, xwcsxfrm.c, xwctomb.c
  4056. crtw32\stdhpp64\algorithm, bitset, cassert, cctype, cerrno, cfloat, ciso646,
  4057. climits, clocale, cmath, complex, csetjmp, csignal, cstdarg, cstddef,
  4058. cstdio, cstdlib, cstring, ctime, cwchar, cwctype, deque, exception,
  4059. fstream, functional, iomanip, ios, iosfwd, iostream, iso646.h, istream,
  4060. iterator, limits, list, locale, map, memory, new, numeric, ostream, queue,
  4061. set, sstream, stack, stdexcept, stl.h, streambuf, string, strstream,
  4062. typeinfo, use_ansi.h, utility, valarray, vector, wctype.h, xcomplex,
  4063. xiosbase, xlocale, xlocinfo, xlocinfo.h, xlocmon, xlocnum, xloctime,
  4064. xmemory, xstddef, xstring, xtree, xutility, ymath.h, yvals.h
  4065. Add in old STL files from \\lang5\rtl CRT 64 sourcesafe tree. These files
  4066. are used to build the Win64 version of STL for as long as NT keeps using
  4067. the old STL headers for their Win32/Win64 builds. These files should go
  4068. away once NT5 ships and NT updates to current STL headers.
  4069. makefile, makefile.inc, makefile.sub
  4070. crtw32\dirs
  4071. srcrel\makefile, mkclnmkf.c, pd-b
  4072. For Win64, build the STL components with the stdcpp64\stdhpp64 sources, not
  4073. the stdcpp\stdhpp ones used for Win32 builds.
  4074. -----------------------------------------------------------------
  4075. Wed 19-May-99 (PhilipLu)
  4076. srcrel\external.mkf, makefile
  4077. When building a 64-bit crt on a 32-bit system, use the V6TOOLS compiler to
  4078. build the 32-bit hosted mkclnmkf.exe and striplin.exe. Also, build the
  4079. proper cross-hosted 64-bit targetted version of mkclnmkf.exe.
  4080. -----------------------------------------------------------------
  4081. Mon 17-May-99 (PhilipLu)
  4082. crtw32\convert\isctype.c, mblen.c, mbstowcs.c, mbtowc.c, tolower.c, toupper.c,
  4083. wcstombs.c, wctomb.c
  4084. crtw32\dllstuff\atonexit.c, cinitexe.c, crtdll.c, crtexe.c
  4085. crtw32\dos\access.c, chdir.c, chmod.c, dosmap.c, drive.c, fullpath.c, getcwd.c,
  4086. getpid.c, mkdir.c, rename.c, rmdir.c, stat.c, unlink.c
  4087. crtw32\eh\ehvecctr.cpp, ehveccvb.cpp, ehvecdtr.cpp, frame.cpp, hooks.cpp,
  4088. oldexcpt.h, rtti.cpp, throw.cpp, unhandld.cpp, user.cpp, validate.cpp
  4089. crtw32\h\assert.h, cmsgs.h, conio.h, crtdbg.h, cruntime.h, ctype.h, direct.h,
  4090. dos.h, dostypes.h, eh.h, ehassert.h, ehhooks.h, ehstate.h, errno.h,
  4091. excpt.h, fcntl.h, float.h, fltintrn.h, fpieee.h, fstream.h, heap.h,
  4092. internal.h, io.h, iomanip.h, ios.h, iostream.h, istream.h, limits.h,
  4093. locale.h, malloc.h, math.h, mbctype.h, mbstring.h, memory.h, msdos.h,
  4094. mtdll.h, new.h, oscalls.h, ostream.h, process.h, rtcsup.h, search.h,
  4095. setjmp.h, setjmpex.h, share.h, signal.h, stdarg.h, stddef.h, stdexcpt.h,
  4096. stdio.h, stdiostr.h, stdlib.h, streamb.h, string.h, strstrea.h, tchar.h,
  4097. time.h, trnsctrl.h, typeinfo.h, varargs.h, wchar.h
  4098. crtw32\h\sys\locking.h, stat.h, timeb.h, types.h, utime.h
  4099. crtw32\heap\free.c, heapdump.c, heapgrow.c, heapinit.c, heapmin.c, realloc.c
  4100. crtw32\iostream\filebuf.cpp, stdiostr.cpp
  4101. crtw32\lowio\chsize.c, close.c, commit.c, dup.c, dup2.c, eof.c, flength.c,
  4102. fstat.c, isatty.c, locking.c, lseek.c, mktemp.c, open.c, osfinfo.c, read.c,
  4103. setmode.c, tell.c, write.c
  4104. crtw32\mbstring\ismbalnm.c, ismbalph.c, ismbdgt.c, ismbgrph.c, ismblwr.c,
  4105. ismbprn.c, ismbpunc.c, ismbspc.c, ismbupr.c, mbctype.c, mbscoll.c,
  4106. mbsicmp.c, mbsicoll.c, mbslwr.c, mbsnbcol.c, mbsnbico.c, mbsncoll.c,
  4107. mbsnicol.c, mbsupr.c, mbtolwr.c, mbtoupr.c
  4108. crtw32\misc\abs.c, assert.c, crtmbox.c, dbgheap.c, dbgrpt.c, getenv.c,
  4109. getpath.c, lconv.c, onexit.c, perror.c, putenv.c, searchen.c, syserr.c
  4110. crtw32\startup\crt0.c, crt0dat.c, crt0msg.c, dllcrt0.c, dllmain.c, stdargv.c
  4111. crtw32\stdcpp\_tolower.c, _toupper.c, xmbtowc.c, xstrcoll.c, xstrxfrm.c,
  4112. xwctomb.c
  4113. crtw32\stdhpp\exception, typeinfo, wctype.h
  4114. crtw32\stdio\_filbuf.c, _file.c, _flsbuf.c, _freebuf.c, _getbuf.c, _open.c,
  4115. _sftbuf.c, clearerr.c, closeall.c, fclose.c, fdopen.c, fflush.c, fgetpos.c,
  4116. fread.c, fseek.c, fsetpos.c, ftell.c, fwrite.c, input.c, maketabc.c,
  4117. output.c, rewind.c, rmtmp.c, setvbuf.c, stream.c, tempnam.c, test_out.c,
  4118. tmpfile.c
  4119. crtw32\string\memicmp.c, strcoll.c, stricmp.c, stricoll.c, strlwr.c,
  4120. strncoll.c, strnicmp.c, strnicol.c, strset.c, strupr.c, strxfrm.c
  4121. crtw32\time\clock.c, dtoxtime.c, ftime.c, localtim.c, mktime.c, mktime64.c,
  4122. strdate.c, strftime.c, strtime.c, time.c, tzset.c, utime.c
  4123. doc\pjp\mkclnmkf.c
  4124. fpw32\include\cv.h, trans.h
  4125. fpw32\tran\fabs.c, sincosh.c, tanh.c
  4126. libw32\include\assert.h, conio.h, crtdbg.h, ctype.h, direct.h, dos.h, eh.h,
  4127. errno.h, exception, excpt.h, fcntl.h, float.h, fpieee.h, fstream.h, io.h,
  4128. iomanip.h, ios.h, iostream.h, istream.h, limits.h, locale.h, malloc.h,
  4129. math.h, mbctype.h, mbstring.h, memory.h, new.h, ostream.h, process.h,
  4130. search.h, setjmp.h, setjmpex.h, share.h, signal.h, stdarg.h, stddef.h,
  4131. stdexcpt.h, stdio.h, stdiostr.h, stdlib.h, streamb.h, string.h, strstrea.h,
  4132. tchar.h, time.h, typeinfo, typeinfo.h, varargs.h, wchar.h, wctype.h
  4133. libw32\include\sys\locking.h, stat.h, timeb.h, types.h, utime.h
  4134. srcrel\msvc40.if
  4135. Removing Macintosh support, stage 2: Remove all Mac support from source
  4136. files. Also remove most _WIN32 #ifs, since _WIN32 is always on now and
  4137. some Mac code was actually under #ifndef _WIN32 instead of #ifdef _MAC.
  4138. -----------------------------------------------------------------
  4139. Mon 17-May-99 (PhilipLu)
  4140. clean.cmd, makefile, makefile.inc, makefile.sub
  4141. crtw32\crt.mkf, crt32.nt
  4142. crtw32\convert\convert.mkf, lsources
  4143. crtw32\dllstuff\lsources
  4144. crtw32\dos\dos.mkf, lsources
  4145. crtw32\eh\eh.mkf, lsources
  4146. crtw32\exec\exec.mkf, lsources
  4147. crtw32\heap\heap.mkf, lsources
  4148. crtw32\helper\lsources
  4149. crtw32\iostream\iostream.mkf, lsources
  4150. crtw32\linkopts\lsources
  4151. crtw32\lowio\lowio.mkf, lsources
  4152. crtw32\mbstring\lsources, mbstring.mkf
  4153. crtw32\misc\lsources, misc.mkf
  4154. crtw32\startup\lsources, startup.mkf
  4155. crtw32\stdio\lsources, stdio.mkf
  4156. crtw32\string\lsources, string.mkf
  4157. crtw32\time\lsources, time.mkf
  4158. doc\copycrt.bat, copysrc.bat
  4159. doc\pjp\makefile.srcrel
  4160. fpw32\fp.mkf, fp32.nt, infer.mkf
  4161. fpw32\conv\conv.mkf, lsources
  4162. fpw32\tran\lsources, tran.mkf
  4163. srcrel\bldnt.cmd, bldwin95.bat, external.mkf, makefile, mkclnmkf.c,
  4164. mkfiles.sed, objects.mkf, pd-b
  4165. Removing Macintosh support, stage 1: Remove all Mac support from makefiles
  4166. and scripts and delfile Mac-only files.
  4167. [delfiled:]
  4168. mkmac.bat
  4169. crtw32\mac.mkf, makemac.cmd, mkm68k.bat, mkpmac.bat
  4170. crtw32\convert\mac\atold.c, strtold.c
  4171. crtw32\dllstuff\macdll\makedll.cmd, makedlld.cmd, msvcrt.def, msvcrt.r,
  4172. msvcrtd.def
  4173. crtw32\dos\mac\remove.c
  4174. crtw32\eh\mac\m68k\frame.cpp, trnsctrl.a
  4175. crtw32\eh\mac\pmac\ehstate.cpp, exdsptch.cpp, handlers.asm, lowhelpr.asm,
  4176. ntstatus.h, ppcinst.h, trnsctrl.cpp, unwind.asm, vunwind.cpp
  4177. crtw32\exec\mac\spawn.c
  4178. crtw32\h\plstring.h
  4179. crtw32\h\mac\mpw.h, rtlib.h
  4180. crtw32\h\mac\m68k\assert.a, crtequ.a, sysequ.a, traps.a
  4181. crtw32\heap\mac\heapaslm.c
  4182. crtw32\helper\mac\pmac\i64div.asm, i64rem.asm, i64rsh.asm, rfpr.asm, rgpr.asm,
  4183. sfpr.asm, sgpr.asm, u64div.asm, u64rem.asm
  4184. crtw32\lowio\mac\_endlow.c, dupx.c
  4185. crtw32\misc\mac\cinitenv.c, cinitone.c, gestalt.c, id2path.c, signal.c,
  4186. xcptfltr.c
  4187. crtw32\misc\mac\m68k\libhlprs.a, rts.a, setjmp.a, stkavl.a
  4188. crtw32\misc\mac\pmac\exsup.asm, setjmp.asm, stkavl.c
  4189. crtw32\startup\mac\amsg.c, exit.c, init.c, libcinfo.c, runtime.c
  4190. crtw32\startup\mac\m68k\applyfix.a, astart.a, chkstk.a, fixupseg.a, getstack.a,
  4191. loaddata.a, loadseg.a, qd.a, quit.a, shellrtn.a, stdalone.a, unloadsn.a
  4192. crtw32\startup\mac\pmac\astart.c, chkstk.asm, crtdllex.c, crtexit.c, dllexit.c,
  4193. qd.c, shellrtn.c, sp.c, testexit.c
  4194. crtw32\stdio\mac\initstd.c
  4195. crtw32\string\special.mak
  4196. crtw32\string\mac\c2pstr.c, p2cstr.c, plstrcat.c, plstrchr.c, plstrcmp.c,
  4197. plstrlen.c, plstrnca.c, plstrncm.c, plstrncp.c, plstrpbr.c, plstrrch.c,
  4198. plstrspn.c, plstrstr.c
  4199. crtw32\time\mac\cinitclk.c
  4200. crtw32\tools\mac\addseg.c, addseg.exe, adep.bat, adep.sed, asm68.exe, cdep.bat,
  4201. cdep.sed, cp.exe, gawk.exe, getver.exe, ifstrip.exe, make.exe, ml.err,
  4202. ml.exe, nmake.exe, relinc.cmd, relinc.if, relinc.sed, sort.exe, uniq.exe
  4203. fpw32\m68k.mkf, makemac.cmd, mkm68k.bat, mkpmac.bat, pmac.mkf
  4204. fpw32\conv\mac\m68k\_xtos.c, _xtou.c, cfinl.c, cfout.c, clfout.c, cvt.c,
  4205. decode.a, fpdata.c, fpinit.c, lddata.c, ldinit.c, libcinfo.c
  4206. fpw32\conv\mac\pmac\dtoi.asm, dtoi64.asm, dtou.asm, dtou64.asm, fpinit.c,
  4207. ftou.asm, i64tod.asm, itod.asm, itof.asm, u64tod.asm, utod.asm, utof.asm
  4208. fpw32\include\mac\transl.h
  4209. fpw32\include\mac\m68k\sane.a, trans.a, traps.a
  4210. fpw32\tran\special.mak
  4211. fpw32\tran\mac\m68k\_fpxpt.c, asincosl.c, atan2.c, atan2l.c, bessell.c, ceil.a,
  4212. ceill.a, error.a, exphlp.c, exphlpl.c, fabs.a, fabsl.a, floor.a, floorl.a,
  4213. fmod.a, fmodl.a, fpctrl.a, frexpl.c, frnd.a, frndl.a, fsqrt.c, fsqrtl.c,
  4214. huge.a, hypotl.c, iceil.a, ieee.c, ifloor.a, ifmod.a, isqrt.a, itran.a,
  4215. itrig.a, itriga.a, itrigh.a, ldexpl.c, matherr.c, matherrl.c, modfl.c,
  4216. sincoshl.c, sqrt.a, sqrtl.a, tanhl.c, tran.a, tranl.a, trig.a, triga.a,
  4217. trigal.a, trigh.a, trighl.a, trigl.a, utill.c
  4218. fpw32\tran\mac\pmac\_fpctrl.c, _fpxpt.c, fpctrl.asm, frnd.c, huge.c, ieee.c
  4219. libw32\include\mrc\cfrg.r, cfrg1024.r, cfrg256.r, cfrg512.r
  4220. libw32\lib\mppc\cfrg.rsc, cfrg1024.rsc, cfrg256.rsc, cfrg512.rsc
  4221. libw32\tools\m68k\aliasobj.exe
  4222. libw32\tools\pmac\aliasobj.exe, detab.exe, ifstrip.exe, pd.exe, striphdr.exe,
  4223. tolwrupr.exe, trailing.exe
  4224. srcrel\_sample_.r
  4225. Mac-only files delfiled from source tree.
  4226. -----------------------------------------------------------------
  4227. Fri 14-May-99 (PhilipLu)
  4228. crtw32\h\assert.h, conio.h, ctype.h, direct.h, dos.h, eh.h, errno.h, excpt.h,
  4229. float.h, fpieee.h, io.h, locale.h, malloc.h, math.h, mbctype.h, mbstring.h,
  4230. memory.h, new.h, process.h, search.h, setjmp.h, signal.h, stddef.h, stdio.h,
  4231. stdlib.h, string.h, time.h, wchar.h
  4232. crtw32\h\sys\stat.h, timeb.h, utime.h
  4233. crtw32\stdhpp\wctype.h
  4234. fpw32\include\cv.h, trans.h
  4235. libw32\include\assert.h, conio.h, ctype.h, direct.h, dos.h, eh.h, errno.h,
  4236. excpt.h, float.h, fpieee.h, io.h, locale.h, malloc.h, math.h, mbctype.h,
  4237. mbstring.h, memory.h, new.h, process.h, search.h, setjmp.h, signal.h,
  4238. stddef.h, stdio.h, stdlib.h, string.h, time.h, wchar.h, wctype.h
  4239. libw32\include\sys\stat.h, timeb.h, utime.h
  4240. srcrel\msvc40.if
  4241. Remove all defs of _CRTAPI1/2. There were no uses.
  4242. crtw32\h\win32s.h [delfiled]
  4243. crtw32\heap\handler.cpp, heapinit.c, malloc.c, oldnew.c, _newmode.c
  4244. crtw32\iostream\cerrinit.cpp, cininit.cpp, cloginit.cpp, iostrini.cpp
  4245. crtw32\linkopts\newnew.c
  4246. crtw32\lowio\lowio.mkf
  4247. crtw32\misc\ctype.c, dbghook.c, inithelp.c, lconv.c, misc.mkf, nlsdata1.c,
  4248. nlsdata3.c, wsetloca.c
  4249. crtw32\startup\mlock.c
  4250. crtw32\stdio\ncommode.c, rmtmp.c, stream.c, tmpfile.c
  4251. crtw32\time\timeset.c
  4252. doc\copysrc.bat
  4253. fpw32\tran\matherr.c
  4254. libw32\buildall.cmd, makefile, msvcrt.src
  4255. srcrel\msvc40.if, pd-b
  4256. Eliminate all Win32s code still hanging around.
  4257. -----------------------------------------------------------------
  4258. Thu 13-May-99 (PhilipLu)
  4259. crtw32\stdcpp\iosptrs.cpp
  4260. crtw32\stdhpp\xstddef
  4261. libw32\include\xstddef
  4262. Missing __cdecl in prototype for _Loc_atexit.
  4263. -----------------------------------------------------------------
  4264. Thu 13-May-99 (PhilipLu)
  4265. makefile
  4266. crtw32\dllstuff\crtdll.c, crtexe.c
  4267. crtw32\h\rtcapi.h, rtcpriv.h, rtcsup.h
  4268. crtw32\misc\alpha\chkesp.c
  4269. crtw32\misc\i386\chkesp.c
  4270. crtw32\rtc\bintree.cpp, callsite.cpp, chsyheap.cpp, contain.cpp, convert.cpp,
  4271. error.cpp, fileio.cpp, init.cpp, initsect.cpp, memory.cpp, pdblkup.cpp,
  4272. shadow.cpp, stack.cpp, userapi.cpp
  4273. crtw32\startup\crt0.c, crt0dat.c, dllcrt0.c
  4274. crtw32\stdcpp\delaop.cpp, delop.cpp, newaop.cpp, newaop2.cpp, newop.cpp,
  4275. newop2.cpp
  4276. libw32\include\rtcapi.h
  4277. libw32\msvcrt.src
  4278. srcrel\msvc40.if
  4279. _CC_RUNTIME_CHECKS -> _RTC and other minor RTC cleanup
  4280. -----------------------------------------------------------------
  4281. Wed 12-May-99 (PhilipLu)
  4282. makefile, makefile.inc, makefile.sub
  4283. crtw32\eh\rtti.cpp
  4284. crtw32\heap\expand.c, free.c, malloc.c, new2.cpp
  4285. crtw32\misc\dbgheap.c, lsources
  4286. crtw32\misc\alpha\setjmp.s, setjmpex.s
  4287. crtw32\stdcpp\locale.cpp, locale0.cpp, wlocale.cpp, xlocale.cpp,
  4288. xstrcoll.c, xwcscoll.c
  4289. crtw32\stdhpp\ostream, streambuf, xlocale
  4290. libw32\msvcrt.src
  4291. libw32\include\ostream, rtcapi.h, streambuf, xlocale
  4292. srcrel\makefile, objects.mkf
  4293. Improve method used to disable RTC support in Win64. Fix Win64 build
  4294. for Alpha64 and IA64.
  4295. -----------------------------------------------------------------
  4296. Tue 11-May-99 (KFrei)
  4297. This stuff moves all the runtime check code under #ifdef _CC_RUNTIME_CHECKS
  4298. makefile
  4299. Only define _CC_RUNTIME_CHECKS for non LLP64 builds
  4300. crtw32\dllstuff\crtdll.c, crtexe.c
  4301. crtw32\startup\crt0.c, crt0dat.c, dllcrt0.c
  4302. #ifdef'ed RTC init and term code
  4303. crtw32\h\rtcapi.h, rtcpriv.h, rtcsup.h
  4304. crtw32\libw32\include\rtcapi.h
  4305. #ifdef'ed the entire contents of the headers
  4306. crtw32\misc\alpha\chkesp.c
  4307. crtw32\misc\i386\chkesp.c
  4308. #ifdef'ed the initialization, shutdown and syncronization stuff
  4309. crtw32\rtc\bintree.cpp, callsite.cpp, chsyheap.cpp, contain.cpp, convert.cpp,
  4310. error.cpp, fileio.cpp, init.cpp, initsect.cpp, memory.cpp, pdblkup.cpp,
  4311. shadow.cpp, stack.cpp, userapi.cpp
  4312. Everything is now empty #ifndef _CC_RUNTIME_CHECKS
  4313. crtw32\stdcpp\delaop.cpp, delop.cpp, newaop.cpp, newaop2.cpp, newop.cpp, newop2.cpp
  4314. Put all the usage of the RTC code under _CC_RUNTIME_CHECKS
  4315. crtw32\libw32\msvcrt.src
  4316. put _CRT_RTC_INIT export under #ifdef _CC_RUNTIME_CHECKS
  4317. -----------------------------------------------------------------
  4318. Mon 10-May-99 (GregF)
  4319. crtw32\convert\wcstombs.c, wctomb.c
  4320. crtw32\misc\a_loc.c, a_map.c, w_cmp.c, w_map.c, w_str.c
  4321. crtw32\stdcpp\xwctomb.c
  4322. crtw32\time\tzset.c
  4323. Changed the dwFlags argument to WideCharToMultiByte to be zero. This was
  4324. suggested by K. D. Chang to avoid problems with codepage 1258 on NT 5.0.
  4325. -----------------------------------------------------------------
  4326. Wed 05-May-99 (rlanser)
  4327. These are all ports from the CRT64 or CRT64_SIZET_32 trees (PhilipLu)
  4328. makefile
  4329. link /debugtype:both,fixup for IA64
  4330. crtw32\eh\frame.cpp
  4331. Add __unaligned.
  4332. crtw32\misc\assert.c
  4333. Define _DbgBreak for IA64.
  4334. crtw32\h\crtdbg.h
  4335. libw32\include\crtdbg.h
  4336. Define _CrtDbgBeak for IA64.
  4337. fpw32\conv\tenpow.c
  4338. fpw32\include\cv.h
  4339. Added _M_IA64 to alignment #if's.
  4340. -----------------------------------------------------------------
  4341. Wed 05-May-99 (PhilipLu)
  4342. srcrel\clnsrcrel.bat, makefile
  4343. Don't copy platform-specific files of other platforms. Saves copying about
  4344. 500 files on 32-bit x86 build.
  4345. crtw32\eh\throw.cpp
  4346. Buildfix for newer Win headers with new prototype of RaiseException, while
  4347. still allowing build with old headers missing definition of PULONG_PTR.
  4348. crtw32\misc\alpha\chandler.c
  4349. crtw32\startup\alpha\chkstk.s
  4350. Buildfixes for 32-bit Alpha build after 64-bit merge.
  4351. -----------------------------------------------------------------
  4352. Tue 04-May-99 (PhilipLu)
  4353. crtw32\dllstuff\ia64\dllsupp.c
  4354. crtw32\h\sect_attribs.h
  4355. crtw32\misc\ia64\chandler.c, cinitone.s, jmpuwind.s, longjmp.s, memcpys.s,
  4356. memsets.s, miscs.s, setjmp.s, setjmpex.s
  4357. crtw32\startup\ia64\chkstk.s, fp8.c,
  4358. crtw32\stdcpp\dirs, sources.nt
  4359. crtw32\stdcpp\stp\makefile, sources
  4360. fpw32\conv\psx\makefile, sources
  4361. fpw32\tran\axp64\acos.s, acosf.s, asin.s, asinacos.s, asinf.s, ata_tabs.s,
  4362. ata_tabt.s, atan2f.s, atan2s.s, atanf.s, atans.s, cabs.s, cabsf.s,
  4363. captcont.s, ceilf.s, ceils.s, chopt.s, copysgnf.s, cos_vo.s, cosf.s,
  4364. cosf_vo.s, cosh.s, coshf.s, coss.s, cot.s, cotf.s, dpml_com.s, expf.s,
  4365. exps.s, f_acos.s, f_acosf.s, f_asin.s, f_asinf.s, f_atan.s, f_atan2.s,
  4366. f_atan2f.s, f_atanf.s, f_cos.s, f_cosf.s, f_exp.s, f_expf.s, f_hypot.s,
  4367. f_hypotf.s, f_log.s, f_log10.s, f_log10f.s, f_logf.s, f_pow.s, f_powf.s,
  4368. f_sin.s, f_sincof.s, f_sincos.s, f_sinf.s, f_sqrt.s, f_sqrtf.s, f_tan.s,
  4369. f_tanf.s, fabsf.s, fabss.s, finitef.s, floorf.s, floors.s, fmodf.s,
  4370. fmods.s, fp_clasf.s, fpctrl.s, fpint.s, frexp.s, frexpf.s, frnd.s,
  4371. huge.s, hypotf.s, hypots.s, invtrigs.s, invtrigt.s, isnanf.s, j0f.s,
  4372. j1f.s, jnf.s, l10_tabt.s, ldexp.s, log10f.s, log10s.s, log_tabt.s,
  4373. logbf.s, logf.s, logs.s, modff.s, modfs.s, nextaftf.s, pow_tabt.s,
  4374. powcerr.s, powf.s, pows.s, rsqrt.s, rsqrtf.s, sin_tabt.s, sin_vo.s,
  4375. sincofvo.s, sincos.s, sincosf.s, sincosvo.s, sinf.s, sinf_vo.s, sinh.s,
  4376. sinhcosf.s, sinhcosh.s, sinhf.s, sins.s, specexp.s, specexpf.s,
  4377. sqr_tabt.s, sqrtf.s, sqrts.s, tan_tabt.s, tanf.s, tanh.s, tanhf.s,
  4378. tans.s, trig_rdf.s, trig_rdx.s, trig_tab.s, y0f.s, y1f.s, ynf.s
  4379. fpw32\tran\ia64\asincosf.c, atan2f.c, atanf.c, ceilf.c, em_types.h, emfloat.s,
  4380. expf.c, fabsf.c, filter.c, floorf.c, fmodf.c, fp80.s, fp80c.c, fpctrl.c,
  4381. fpieee_flt.h, frnd.s, huge.s, ieee.c, log10f.c, logf.c, powf.c,
  4382. sincosf.c, sincoshf.c, sqrtf.c, tanf.c, tanhf.c
  4383. fpw32\tran\psx\makefile, sources
  4384. libw32\lib\axp64\
  4385. libw32\lib\ia64\
  4386. libw32\lib\stp\makefile, makefile.inc, sources
  4387. libw32\tools\ia64\aliasobj.exe, detab.exe, ifstrip.exe, pd.exe, striphdr.exe,
  4388. tolwrupr.exe, trailing.exe
  4389. Merging 64-bit CRT with 32-bit CRT. Added new files from the CRT 64 tree.
  4390. log_64.txt
  4391. Merging 64-bit CRT with 32-bit CRT. Save log.txt from CRT 64 tree under
  4392. new name.
  4393. makefile
  4394. makefile.inc
  4395. makefile.sub
  4396. crtw32\crt32.nt, dirs
  4397. crtw32\convert\_mbslen.c, atof.c, mblen.c, mbstowcs.c, strtod.c, wcstombs.c
  4398. crtw32\direct\findf64.c, findfile.c
  4399. crtw32\dllstuff\cinitexe.c, crtdll.c, crtexe.c, lsources
  4400. crtw32\dllstuff\dlllib\sources
  4401. crtw32\dos\fullpath.c
  4402. crtw32\eh\frame.cpp, lsources, oldexcpt.cpp, oldexcpt.h, sources.nt, throw.cpp,
  4403. unhandld.cpp
  4404. crtw32\eh\alpha\bridge.s, ehunwind.c, xcptmisc.h, xcptmisc.s
  4405. crtw32\eh\dll\sources
  4406. crtw32\eh\ia64\ehstate.cpp, handlerc.cpp, handlers.s, trnsctrl.cpp
  4407. crtw32\eh\mt\sources
  4408. crtw32\eh\nt\sources
  4409. crtw32\eh\st\sources
  4410. crtw32\exec\cenvarg.c, dospawn.c, execl.c, execle.c, execlp.c, execlpe.c,
  4411. execv.c, execvp.c, execvpe.c, getproc.c, loaddll.c, spawnl.c,
  4412. spawnle.c, spawnlp.c, spawnlpe.c, spawnv.c, spawnve.c, spawnvp.c,
  4413. spawnvpe.c, system.c, wait.c
  4414. crtw32\h\assert.h, conio.h, crtdbg.h, cruntime.h, ctime.h, ctype.h, direct.h,
  4415. dos.h, eh.h, ehstate.h, errno.h, excpt.h, float.h, fpieee.h, heap.h,
  4416. internal.h, io.h, locale.h, malloc.h, math.h, mbctype.h, mbstring.h,
  4417. memory.h, mtdll.h, new.h, nlsint.h, process.h, search.h, setjmp.h,
  4418. signal.h, stdarg.h, stddef.h, stdexcpt.h, stdio.h, stdlib.h, streamb.h,
  4419. string.h, time.h, trnsctrl.h, varargs.h, wchar.h, winheap.h
  4420. crtw32\h\sys\stat.h, timeb.h, types.h, utime.h
  4421. crtw32\heap\new.cpp
  4422. crtw32\heap\dll\sources
  4423. crtw32\heap\mt\sources
  4424. crtw32\heap\st\sources
  4425. crtw32\helper\lsources, sources.nt
  4426. crtw32\iostream\_strstre.cpp, ostream.cpp, stdiostr.cpp, streamb.cpp
  4427. crtw32\linkopts\lsources
  4428. crtw32\lowio\cgets.c, close.c, cputs.c, dup.c, dup2.c, getch.c, initcon.c,
  4429. ioinit.c, open.c, osfinfo.c, pipe.c, putch.c, read.c, write.c
  4430. crtw32\mbstring\mbctype.c, mbsnbcol.c, mbsnbico.c, mbsncoll.c, mbsnicol.c,
  4431. sources.nt
  4432. crtw32\misc\a_env.c, bsearch.c, charmax.c, dbgheap.c, dbgnew.cpp, dbgrpt.c,
  4433. getenv.c, lsources, onexit.c, perror.c, putenv.c, qsort.c, setenv.c,
  4434. setlocal.c, splitpat.c, w_env.c, wperror.c, wsetloca.c
  4435. crtw32\misc\alpha\chandler.c, ghandler.c, jmpuwind.s, longjmp.s, otsjmp.s,
  4436. otsjmpex.s
  4437. crtw32\misc\dll\sources
  4438. crtw32\misc\mt\sources
  4439. crtw32\misc\nt\sources
  4440. crtw32\misc\psx\sources
  4441. crtw32\misc\st\sources
  4442. crtw32\startup\crt0.c, crt0dat.c, crt0init.c, crt0msg.c, lsources, startup.mkf,
  4443. stdenvp.c, thread.c, threadex.c, tidtable.c, tlssup.c, wild.c
  4444. crtw32\startup\alpha\chkstk.s
  4445. crtw32\startup\dll\sources
  4446. crtw32\startup\dlllib\sources
  4447. crtw32\startup\mt\sources
  4448. crtw32\startup\nt\sources
  4449. crtw32\startup\psx\sources
  4450. crtw32\startup\st\sources
  4451. crtw32\stdcpp\xstrcoll.c, xstrxfrm.c, xwcscoll.c, xwcsxfrm.c
  4452. crtw32\stdio\_file.c, _flsbuf.c, fflush.c, fputs.c, fputws.c, fread.c, ftell.c,
  4453. ftelli64.c, fwrite.c, input.c, output.c, popen.c, puts.c, rmtmp.c,
  4454. setvbuf.c, sprintf.c, sscanf.c, swprintf.c, swscanf.c, tempnam.c,
  4455. vsprintf.c, vswprint.c
  4456. crtw32\string\lsources, memcpy.c, memmove.c, memset.c, sources.nt, strncoll.c,
  4457. strnicol.c, strset.c, strxfrm.c, wcscspn.c, wcsncoll.c, wcsnicol.c,
  4458. wcsspn.c, wcsxfrm.c
  4459. crtw32\time\clock.c, dtoxtime.c, gmtime.c, localtim.c, mktime.c, wcsftime.c
  4460. fpw32\conv\cfin.c, fltinf.c, fpinit.c
  4461. fpw32\include\cv.h, trans.h
  4462. fpw32\tran\asincos.c, atan.c, bessel.c, ceil.c, exp.c, fabs.c, floor.c, fmod.c,
  4463. fpexcept.c, frexp.c, hypot.c, ieeemisc.c, ldexp.c, log.c, lsources,
  4464. modf.c, pow.c, sincos.c, sincosh.c, sources.nt, sqrt.c, tan.c, tanh.c
  4465. fpw32\tran\alpha\dpml_exc.c, filter.c
  4466. fpw32\tran\i386\filter_simd.c, xmmi_fp_emul.c
  4467. libw32\makefile, msvcirt.src, msvcrt.src
  4468. libw32\include\assert.h, conio.h, crtdbg.h, ctype.h, direct.h, dos.h, eh.h,
  4469. errno.h, excpt.h, float.h, fpieee.h, io.h, locale.h, malloc.h, math.h,
  4470. mbctype.h, mbstring.h, memory.h, new.h, process.h, search.h, setjmp.h,
  4471. signal.h, stdarg.h, stddef.h, stdexcpt.h, stdio.h, stdlib.h, streamb.h,
  4472. string.h, time.h, varargs.h, wchar.h
  4473. libw32\include\sys\stat.h, timeb.h, types.h, utime.h
  4474. libw32\lib\dirs, sources.nt
  4475. srcrel\external.mkf, makefile, mkclnmkf.c, msvc40.if, objects.mkf, pd-b
  4476. Merging 64-bit CRT with 32-bit CRT. Merged in diffs from CRT 64 tree.
  4477. crtw32\heap\calloc.c, expand.c, free.c, heapchk.c, heapinit.c, heapmin.c,
  4478. malloc.c, msize.c, realloc.c, sbheap.c
  4479. Merging 64-bit CRT with 32-bit CRT. Merged in diffs from CRT 64 tree.
  4480. Also, disable the small block heap under Win64. All heap routines just
  4481. pass through to the underlying OS APIs.
  4482. -----------------------------------------------------------------
  4483. Mon 26-Apr-99 (PhilipLu)
  4484. crtw32\eh\comerr.cpp
  4485. crtw32\h\comerr.h
  4486. crtw32\winheap\*.*
  4487. libw32\include\comerr.h
  4488. Delfile unnecessary files
  4489. -----------------------------------------------------------------
  4490. Mon 26-Apr-99 (PhilipLu)
  4491. crtw32\h\mtdll.h, setlocal.h
  4492. crtw32\misc\initmon.c, initnum.c, setlocal.c
  4493. crtw32\startup\tidtable.c
  4494. Introduced one more reference counter for pieces of the per-thread locale
  4495. information, cleaned up more setlocale memory leaks.
  4496. -----------------------------------------------------------------
  4497. Fri 16-Apr-99 (GregF)
  4498. crtw32\heap\realloc.c
  4499. Added a call to __sbh_find_block to handle the case where __sbh_alloc_block
  4500. has caused the header list to be moved. This fixes VS7 #14020.
  4501. -----------------------------------------------------------------
  4502. Wed 14-Apr-99 (PhilipLu)
  4503. crtw32\stdcpp\delaop.cpp, delop.cpp, newaop.cpp, newaop2.cpp, newop.cpp,
  4504. newop2.cpp
  4505. Add back RTC functionality wiped out by STL integration (whoops)
  4506. crtw32\stdcpp\iosptrs.cpp
  4507. crtw32\stdhpp\xstddef
  4508. Missing __cdecl in funcptr arg to _Loc_atexit
  4509. crtw32\stdhpp\cassert, iosfwd
  4510. Minor cleanup missed in STL integration
  4511. crtw32\tools\win32\relinc.cmd
  4512. Add STL header xlocmes to cleansing
  4513. -----------------------------------------------------------------
  4514. Tue 13-Apr-99 (PhilipLu)
  4515. makefile, makefile.inc, srcrel\pd-b
  4516. Add new files stdcpp\cerr.cpp, stdcpp\cin.cpp, stdcpp\clog.cpp,
  4517. stdcpp\cout.cpp, stdcpp\iosptrs.cpp, stdcpp\wcerr.cpp, stdcpp\wcin.cpp,
  4518. stdcpp\wclog.cpp, stdcpp\wcout.cpp, stdhpp\hash_map, stdhpp\hash_set,
  4519. stdhpp\xhash, libw32\include\hash_map, libw32\include\hash_set,
  4520. libw32\include\xhash.
  4521. doc\copysrc.bat
  4522. Add new files, plus missing files delaop.cpp, dealop_s.cpp, newaop.cpp,
  4523. newaop2.cpp, newaop_s.cpp, newaop2_s.cpp, stdthrow.cpp.
  4524. crtw32\stdcpp\cerr.cpp [NEW], cin.cpp [NEW], clog.cpp [NEW], cout.cpp [NEW],
  4525. delaop.cpp, delop.cpp, fiopen.cpp, iomanip.cpp, ios.cpp,
  4526. iosptrs.cpp [NEW], iostream.cpp, locale.cpp, LOCALE0.CPP, newaop.cpp,
  4527. newaop2.cpp, newop.cpp, newop2.cpp, nomemory.cpp, stdthrow.cpp,
  4528. string.cpp, strstrea.cpp, uncaught.cpp, wcerr.cpp [NEW], wcin.cpp [NEW],
  4529. wclog.cpp [NEW], wcout.cpp [NEW], wctrans.c, wctype.c, wiostrea.cpp,
  4530. wlocale.cpp, xcosh.c, xdnorm.c, xdscale.c, xdtest.c, xexp.c, xfcosh.c,
  4531. xfdnorm.c, xfdscale.c, xfdtest.c, xfexp.c, xfsinh.c, xfvalues.c,
  4532. xlcosh.c, xldnorm.c, xldscale.c, xldtest.c, xlexp.c, xlocale.cpp,
  4533. xlpoly.c, xlsinh.c, xlvalues.c, xmath.h, xmbtowc.c, xpoly.c, xsinh.c,
  4534. xstod.c, xvalues.c, xwctomb.c
  4535. Update all files to Plauger's drop of 12/15/98.
  4536. crtw32\stdhpp\algorithm, bitset, cassert, cctype, cerrno, cfloat, ciso646,
  4537. climits, clocale, cmath, complex, csetjmp, csignal, cstdarg, cstddef,
  4538. cstdio, cstdlib, cstring, ctime, cwchar, cwctype, deque, exception,
  4539. fstream, functional, hash_map [NEW], hash_set [NEW], iomanip, ios,
  4540. iosfwd, iostream, iso646.h, istream, iterator, limits, list, locale,
  4541. map, memory, new, numeric, ostream, queue, set, sstream, stack,
  4542. stdexcept, streambuf, string, strstream, typeinfo, utility, valarray,
  4543. vector, xcomplex, xhash [NEW], xiosbase, xlocale, xlocinfo, xlocinfo.h,
  4544. xlocmes, xlocmon, xlocnum, xloctime, xmemory, xstddef, xstring, xtree,
  4545. xutility, ymath.h, yvals.h
  4546. Update all files to Plauger's drop of 12/15/98.
  4547. crtw32\tools\win32\relinc.cmd
  4548. Cleanse and copy new STL headers hash_map, hash_set, and xhash.
  4549. libw32\include
  4550. Update all STL headers to Plauger's drop of 12/15/98.
  4551. -----------------------------------------------------------------
  4552. Fri 09-Apr-99 (v-JohnMo)
  4553. crtw32\helper\lsources
  4554. crtw32\helper\sources.nt
  4555. crtw32\helper\alpha\sfillx.s
  4556. crtw32\helper\alpha\sfwdcpy.s
  4557. srcrel\objects.mkf
  4558. srcrel\pd-b
  4559. Added a couple of helper functions for Alpha UTC backend support
  4560. -----------------------------------------------------------------
  4561. Thu 08-Apr-99 (GregF)
  4562. crtw32\convert\mbtowc.c
  4563. Replaced MT with _MT, oops...
  4564. -----------------------------------------------------------------
  4565. Thu 08-Apr-99 (GregF)
  4566. crtw32\h\mtdll.h, setlocal.h
  4567. crtw32\misc\initctyp.c, initmon.c, initnum.c, setlocal.c
  4568. crtw32\startup\tidtable.c
  4569. crtw32\time\strftime.c
  4570. Introduced more reference counters for pieces of the per-thread locale
  4571. information.
  4572. -----------------------------------------------------------------
  4573. Wed 07-Apr-99 (PhilipLu)
  4574. log.txt -> log_v60.txt
  4575. Renamed old LOG.TXT from V6.0 and started a new LOG.TXT (this file).
  4576. -----------------------------------------------------------------
  4577. ***************************************************************************
  4578. ***************************************************************************
  4579. *** ***
  4580. *** This file contains the history for MSVC++ v7.0 (relative to v6.0) ***
  4581. *** The file should always be edited at the top so that the most ***
  4582. *** recent changes are at the beginning of the file and the oldest ***
  4583. *** changes are at the end of the file. This comment marks the end. ***
  4584. *** ***
  4585. ***************************************************************************
  4586. ***************************************************************************