Index: algorithm =================================================================== RCS file: /cvsroot/GxInclude/Vc9sp1/Include/algorithm,v retrieving revision 1.1 retrieving revision 1.2 diff -c -3 -p -r1.1 -r1.2 *** algorithm 6 Jan 2009 21:18:02 -0000 1.1 --- algorithm 6 Jan 2009 21:21:23 -0000 1.2 *************** *** 11,16 **** --- 11,51 ---- #pragma warning(disable: 4244) #endif /* _MSC_VER */ + /* ------------------------------------------------------------------------ */ + /* Forward declare these now because they are used as non-dependent names. */ + _STDEXT_BEGIN + template + inline _OutIt unchecked_remove_copy(_InIt _First, _InIt _Last, + _OutIt _Dest, const _Ty& _Val); + template + inline _OutIt unchecked_remove_copy_if(_InIt _First, _InIt _Last, + _OutIt _Dest, _Pr _Pred); + template + inline _OutIt unchecked_merge(_InIt1 _First1, _InIt1 _Last1, + _InIt2 _First2, _InIt2 _Last2, _OutIt _Dest); + template + inline _OutIt unchecked_merge(_InIt1 _First1, _InIt1 _Last1, + _InIt2 _First2, _InIt2 _Last2, _OutIt _Dest, + _Pr _Pred); + template + inline _BidIt3 _Unchecked_merge_backward(_BidIt1 _First1, _BidIt1 _Last1, + _BidIt2 _First2, _BidIt2 _Last2, + _BidIt3 _Dest); + template + inline _BidIt3 _Unchecked_merge_backward(_BidIt1 _First1, _BidIt1 _Last1, + _BidIt2 _First2, _BidIt2 _Last2, + _BidIt3 _Dest, _Pr _Pred); + template + inline void _Unchecked_chunked_merge(_BidIt _First, _BidIt _Last, + _OutIt _Dest, _Diff _Chunk, + _Diff _Count); + template + inline void _Unchecked_chunked_merge(_BidIt _First, _BidIt _Last, + _OutIt _Dest, _Diff _Chunk, + _Diff _Count, _Pr _Pred); + _STDEXT_END + /* ------------------------------------------------------------------------ */ + _STD_BEGIN // COMMON SORT PARAMETERS Index: crtdbg.h =================================================================== RCS file: /cvsroot/GxInclude/Vc9sp1/Include/crtdbg.h,v retrieving revision 1.1 retrieving revision 1.2 diff -c -3 -p -r1.1 -r1.2 *** crtdbg.h 6 Jan 2009 21:18:02 -0000 1.1 --- crtdbg.h 6 Jan 2009 21:21:23 -0000 1.2 *************** should not have done so since it was not *** 588,593 **** --- 588,594 ---- _RPT_BASE_W((rptno, _CRT_WIDE(__FILE__), __LINE__, NULL, msg, arg1, arg2, arg3, arg4, arg5)) #if _MSC_VER >= 1300 && !defined(_CRT_PORTABLE) + void __debugbreak(); #define _CrtDbgBreak() __debugbreak() #elif defined(_M_IX86) && !defined(_CRT_PORTABLE) #define _CrtDbgBreak() __asm { int 3 } Index: crtdefs.h =================================================================== RCS file: /cvsroot/GxInclude/Vc9sp1/Include/crtdefs.h,v retrieving revision 1.1 retrieving revision 1.2 diff -c -3 -p -r1.1 -r1.2 *** crtdefs.h 6 Jan 2009 21:18:02 -0000 1.1 --- crtdefs.h 6 Jan 2009 21:21:23 -0000 1.2 *************** typedef __time64_t time_t; /* time *** 666,764 **** #define __DEFINE_CPP_OVERLOAD_SECURE_FUNC_0_0(_ReturnType, _FuncName, _DstType, _Dst) \ extern "C++" \ { \ ! template \ inline \ ! _ReturnType __CRTDECL _FuncName(_DstType (&_Dst)[_Size]) \ { \ ! return _FuncName(_Dst, _Size); \ } \ } #define __DEFINE_CPP_OVERLOAD_SECURE_FUNC_0_1(_ReturnType, _FuncName, _DstType, _Dst, _TType1, _TArg1) \ extern "C++" \ { \ ! template \ inline \ ! _ReturnType __CRTDECL _FuncName(_DstType (&_Dst)[_Size], _TType1 _TArg1) \ { \ ! return _FuncName(_Dst, _Size, _TArg1); \ } \ } #define __DEFINE_CPP_OVERLOAD_SECURE_FUNC_0_2(_ReturnType, _FuncName, _DstType, _Dst, _TType1, _TArg1, _TType2, _TArg2) \ extern "C++" \ { \ ! template \ inline \ ! _ReturnType __CRTDECL _FuncName(_DstType (&_Dst)[_Size], _TType1 _TArg1, _TType2 _TArg2) \ { \ ! return _FuncName(_Dst, _Size, _TArg1, _TArg2); \ } \ } #define __DEFINE_CPP_OVERLOAD_SECURE_FUNC_0_3(_ReturnType, _FuncName, _DstType, _Dst, _TType1, _TArg1, _TType2, _TArg2, _TType3, _TArg3) \ extern "C++" \ { \ ! template \ inline \ ! _ReturnType __CRTDECL _FuncName(_DstType (&_Dst)[_Size], _TType1 _TArg1, _TType2 _TArg2, _TType3 _TArg3) \ { \ ! return _FuncName(_Dst, _Size, _TArg1, _TArg2, _TArg3); \ } \ } #define __DEFINE_CPP_OVERLOAD_SECURE_FUNC_0_4(_ReturnType, _FuncName, _DstType, _Dst, _TType1, _TArg1, _TType2, _TArg2, _TType3, _TArg3, _TType4, _TArg4) \ extern "C++" \ { \ ! template \ inline \ ! _ReturnType __CRTDECL _FuncName(_DstType (&_Dst)[_Size], _TType1 _TArg1, _TType2 _TArg2, _TType3 _TArg3, _TType4 _TArg4) \ { \ ! return _FuncName(_Dst, _Size, _TArg1, _TArg2, _TArg3, _TArg4); \ } \ } #define __DEFINE_CPP_OVERLOAD_SECURE_FUNC_1_1(_ReturnType, _FuncName, _HType1, _HArg1, _DstType, _Dst, _TType1, _TArg1) \ extern "C++" \ { \ ! template \ inline \ ! _ReturnType __CRTDECL _FuncName(_HType1 _HArg1, _DstType (&_Dst)[_Size], _TType1 _TArg1) \ { \ ! return _FuncName(_HArg1, _Dst, _Size, _TArg1); \ } \ } #define __DEFINE_CPP_OVERLOAD_SECURE_FUNC_1_2(_ReturnType, _FuncName, _HType1, _HArg1, _DstType, _Dst, _TType1, _TArg1, _TType2, _TArg2) \ extern "C++" \ { \ ! template \ inline \ ! _ReturnType __CRTDECL _FuncName(_HType1 _HArg1, _DstType (&_Dst)[_Size], _TType1 _TArg1, _TType2 _TArg2) \ { \ ! return _FuncName(_HArg1, _Dst, _Size, _TArg1, _TArg2); \ } \ } #define __DEFINE_CPP_OVERLOAD_SECURE_FUNC_1_3(_ReturnType, _FuncName, _HType1, _HArg1, _DstType, _Dst, _TType1, _TArg1, _TType2, _TArg2, _TType3, _TArg3) \ extern "C++" \ { \ ! template \ inline \ ! _ReturnType __CRTDECL _FuncName(_HType1 _HArg1, _DstType (&_Dst)[_Size], _TType1 _TArg1, _TType2 _TArg2, _TType3 _TArg3) \ { \ ! return _FuncName(_HArg1, _Dst, _Size, _TArg1, _TArg2, _TArg3); \ } \ } #define __DEFINE_CPP_OVERLOAD_SECURE_FUNC_2_0(_ReturnType, _FuncName, _HType1, _HArg1, _HType2, _HArg2, _DstType, _Dst) \ extern "C++" \ { \ ! template \ inline \ ! _ReturnType __CRTDECL _FuncName(_HType1 _HArg1, _HType2 _HArg2, _DstType (&_Dst)[_Size]) \ { \ ! return _FuncName(_HArg1, _HArg2, _Dst, _Size); \ } \ } --- 666,764 ---- #define __DEFINE_CPP_OVERLOAD_SECURE_FUNC_0_0(_ReturnType, _FuncName, _DstType, _Dst) \ extern "C++" \ { \ ! template \ inline \ ! _ReturnType __CRTDECL _FuncName(_DstType (&_Dst)[_Sz]) \ { \ ! return _FuncName(_Dst, _Sz); \ } \ } #define __DEFINE_CPP_OVERLOAD_SECURE_FUNC_0_1(_ReturnType, _FuncName, _DstType, _Dst, _TType1, _TArg1) \ extern "C++" \ { \ ! template \ inline \ ! _ReturnType __CRTDECL _FuncName(_DstType (&_Dst)[_Sz], _TType1 _TArg1) \ { \ ! return _FuncName(_Dst, _Sz, _TArg1); \ } \ } #define __DEFINE_CPP_OVERLOAD_SECURE_FUNC_0_2(_ReturnType, _FuncName, _DstType, _Dst, _TType1, _TArg1, _TType2, _TArg2) \ extern "C++" \ { \ ! template \ inline \ ! _ReturnType __CRTDECL _FuncName(_DstType (&_Dst)[_Sz], _TType1 _TArg1, _TType2 _TArg2) \ { \ ! return _FuncName(_Dst, _Sz, _TArg1, _TArg2); \ } \ } #define __DEFINE_CPP_OVERLOAD_SECURE_FUNC_0_3(_ReturnType, _FuncName, _DstType, _Dst, _TType1, _TArg1, _TType2, _TArg2, _TType3, _TArg3) \ extern "C++" \ { \ ! template \ inline \ ! _ReturnType __CRTDECL _FuncName(_DstType (&_Dst)[_Sz], _TType1 _TArg1, _TType2 _TArg2, _TType3 _TArg3) \ { \ ! return _FuncName(_Dst, _Sz, _TArg1, _TArg2, _TArg3); \ } \ } #define __DEFINE_CPP_OVERLOAD_SECURE_FUNC_0_4(_ReturnType, _FuncName, _DstType, _Dst, _TType1, _TArg1, _TType2, _TArg2, _TType3, _TArg3, _TType4, _TArg4) \ extern "C++" \ { \ ! template \ inline \ ! _ReturnType __CRTDECL _FuncName(_DstType (&_Dst)[_Sz], _TType1 _TArg1, _TType2 _TArg2, _TType3 _TArg3, _TType4 _TArg4) \ { \ ! return _FuncName(_Dst, _Sz, _TArg1, _TArg2, _TArg3, _TArg4); \ } \ } #define __DEFINE_CPP_OVERLOAD_SECURE_FUNC_1_1(_ReturnType, _FuncName, _HType1, _HArg1, _DstType, _Dst, _TType1, _TArg1) \ extern "C++" \ { \ ! template \ inline \ ! _ReturnType __CRTDECL _FuncName(_HType1 _HArg1, _DstType (&_Dst)[_Sz], _TType1 _TArg1) \ { \ ! return _FuncName(_HArg1, _Dst, _Sz, _TArg1); \ } \ } #define __DEFINE_CPP_OVERLOAD_SECURE_FUNC_1_2(_ReturnType, _FuncName, _HType1, _HArg1, _DstType, _Dst, _TType1, _TArg1, _TType2, _TArg2) \ extern "C++" \ { \ ! template \ inline \ ! _ReturnType __CRTDECL _FuncName(_HType1 _HArg1, _DstType (&_Dst)[_Sz], _TType1 _TArg1, _TType2 _TArg2) \ { \ ! return _FuncName(_HArg1, _Dst, _Sz, _TArg1, _TArg2); \ } \ } #define __DEFINE_CPP_OVERLOAD_SECURE_FUNC_1_3(_ReturnType, _FuncName, _HType1, _HArg1, _DstType, _Dst, _TType1, _TArg1, _TType2, _TArg2, _TType3, _TArg3) \ extern "C++" \ { \ ! template \ inline \ ! _ReturnType __CRTDECL _FuncName(_HType1 _HArg1, _DstType (&_Dst)[_Sz], _TType1 _TArg1, _TType2 _TArg2, _TType3 _TArg3) \ { \ ! return _FuncName(_HArg1, _Dst, _Sz, _TArg1, _TArg2, _TArg3); \ } \ } #define __DEFINE_CPP_OVERLOAD_SECURE_FUNC_2_0(_ReturnType, _FuncName, _HType1, _HArg1, _HType2, _HArg2, _DstType, _Dst) \ extern "C++" \ { \ ! template \ inline \ ! _ReturnType __CRTDECL _FuncName(_HType1 _HArg1, _HType2 _HArg2, _DstType (&_Dst)[_Sz]) \ { \ ! return _FuncName(_HArg1, _HArg2, _Dst, _Sz); \ } \ } *************** typedef __time64_t time_t; /* time *** 767,779 **** { \ __pragma(warning(push)); \ __pragma(warning(disable: 4793)); \ ! template \ inline \ ! _ReturnType __CRTDECL _FuncName(_DstType (&_Dst)[_Size], _TType1 _TArg1, ...) \ { \ va_list _ArgList; \ _crt_va_start(_ArgList, _TArg1); \ ! return _VFuncName(_Dst, _Size, _TArg1, _ArgList); \ } \ __pragma(warning(pop)); \ } --- 767,779 ---- { \ __pragma(warning(push)); \ __pragma(warning(disable: 4793)); \ ! template \ inline \ ! _ReturnType __CRTDECL _FuncName(_DstType (&_Dst)[_Sz], _TType1 _TArg1, ...) \ { \ va_list _ArgList; \ _crt_va_start(_ArgList, _TArg1); \ ! return _VFuncName(_Dst, _Sz, _TArg1, _ArgList); \ } \ __pragma(warning(pop)); \ } *************** typedef __time64_t time_t; /* time *** 783,795 **** { \ __pragma(warning(push)); \ __pragma(warning(disable: 4793)); \ ! template \ inline \ ! _ReturnType __CRTDECL _FuncName(_DstType (&_Dst)[_Size], _TType1 _TArg1, _TType2 _TArg2, ...) \ { \ va_list _ArgList; \ _crt_va_start(_ArgList, _TArg2); \ ! return _VFuncName(_Dst, _Size, _TArg1, _TArg2, _ArgList); \ } \ __pragma(warning(pop)); \ } --- 783,795 ---- { \ __pragma(warning(push)); \ __pragma(warning(disable: 4793)); \ ! template \ inline \ ! _ReturnType __CRTDECL _FuncName(_DstType (&_Dst)[_Sz], _TType1 _TArg1, _TType2 _TArg2, ...) \ { \ va_list _ArgList; \ _crt_va_start(_ArgList, _TArg2); \ ! return _VFuncName(_Dst, _Sz, _TArg1, _TArg2, _ArgList); \ } \ __pragma(warning(pop)); \ } *************** typedef __time64_t time_t; /* time *** 926,936 **** { \ return __insecure_##_FuncName(_Dst); \ } \ ! template \ inline \ ! _ReturnType __CRTDECL _FuncName(_DstType (&_Dst)[_Size]) \ { \ ! _ReturnPolicy(_SecureFuncName(_Dst, _Size), _Dst); \ } \ template <> \ inline \ --- 926,936 ---- { \ return __insecure_##_FuncName(_Dst); \ } \ ! template \ inline \ ! _ReturnType __CRTDECL _FuncName(_DstType (&_Dst)[_Sz]) \ { \ ! _ReturnPolicy(_SecureFuncName(_Dst, _Sz), _Dst); \ } \ template <> \ inline \ *************** typedef __time64_t time_t; /* time *** 971,982 **** { \ return __insecure_##_FuncName(_Dst); \ } \ ! template \ inline \ ! _ReturnType __CRTDECL _FuncName(_DstType (&_Dst)[_Size]) \ { \ size_t _SizeRead = 0; \ ! errno_t _Err = _FuncName##_s(_Dst + 2, (_Size - 2) < ((size_t)_Dst[0]) ? (_Size - 2) : ((size_t)_Dst[0]), &_SizeRead); \ _Dst[1] = (_DstType)(_SizeRead); \ return (_Err == 0 ? _Dst + 2 : 0); \ } \ --- 971,982 ---- { \ return __insecure_##_FuncName(_Dst); \ } \ ! template \ inline \ ! _ReturnType __CRTDECL _FuncName(_DstType (&_Dst)[_Sz]) \ { \ size_t _SizeRead = 0; \ ! errno_t _Err = _FuncName##_s(_Dst + 2, (_Sz - 2) < ((size_t)_Dst[0]) ? (_Sz - 2) : ((size_t)_Dst[0]), &_SizeRead); \ _Dst[1] = (_DstType)(_SizeRead); \ return (_Err == 0 ? _Dst + 2 : 0); \ } \ *************** typedef __time64_t time_t; /* time *** 1026,1036 **** { \ return __insecure_##_FuncName(_Dst, _TArg1); \ } \ ! template \ inline \ ! _ReturnType __CRTDECL _FuncName(_SecureDstType (&_Dst)[_Size], _TType1 _TArg1) \ { \ ! _ReturnPolicy(_SecureFuncName(_Dst, _Size, _TArg1), _Dst); \ } \ template <> \ inline \ --- 1026,1036 ---- { \ return __insecure_##_FuncName(_Dst, _TArg1); \ } \ ! template \ inline \ ! _ReturnType __CRTDECL _FuncName(_SecureDstType (&_Dst)[_Sz], _TType1 _TArg1) \ { \ ! _ReturnPolicy(_SecureFuncName(_Dst, _Sz, _TArg1), _Dst); \ } \ template <> \ inline \ *************** typedef __time64_t time_t; /* time *** 1071,1081 **** { \ return __insecure_##_FuncName(_Dst, _TArg1, _TArg2); \ } \ ! template \ inline \ ! _ReturnType __CRTDECL _FuncName(_SecureDstType (&_Dst)[_Size], _TType1 _TArg1, _TType2 _TArg2) \ { \ ! _ReturnPolicy(_SecureFuncName(_Dst, _Size, _TArg1, _TArg2), _Dst); \ } \ template <> \ inline \ --- 1071,1081 ---- { \ return __insecure_##_FuncName(_Dst, _TArg1, _TArg2); \ } \ ! template \ inline \ ! _ReturnType __CRTDECL _FuncName(_SecureDstType (&_Dst)[_Sz], _TType1 _TArg1, _TType2 _TArg2) \ { \ ! _ReturnPolicy(_SecureFuncName(_Dst, _Sz, _TArg1, _TArg2), _Dst); \ } \ template <> \ inline \ *************** typedef __time64_t time_t; /* time *** 1116,1126 **** { \ return __insecure_##_FuncName(_Dst, _TArg1, _TArg2, _TArg3); \ } \ ! template \ inline \ ! _ReturnType __CRTDECL _FuncName(_SecureDstType (&_Dst)[_Size], _TType1 _TArg1, _TType2 _TArg2, _TType3 _TArg3) \ { \ ! _ReturnPolicy(_SecureFuncName(_Dst, _Size, _TArg1, _TArg2, _TArg3), _Dst); \ } \ template <> \ inline \ --- 1116,1126 ---- { \ return __insecure_##_FuncName(_Dst, _TArg1, _TArg2, _TArg3); \ } \ ! template \ inline \ ! _ReturnType __CRTDECL _FuncName(_SecureDstType (&_Dst)[_Sz], _TType1 _TArg1, _TType2 _TArg2, _TType3 _TArg3) \ { \ ! _ReturnPolicy(_SecureFuncName(_Dst, _Sz, _TArg1, _TArg2, _TArg3), _Dst); \ } \ template <> \ inline \ *************** typedef __time64_t time_t; /* time *** 1161,1171 **** { \ return __insecure_##_FuncName(_Dst, _TArg1, _TArg2, _TArg3, _TArg4); \ } \ ! template \ inline \ ! _ReturnType __CRTDECL _FuncName(_DstType (&_Dst)[_Size], _TType1 _TArg1, _TType2 _TArg2, _TType3 _TArg3, _TType4 _TArg4) \ { \ ! _ReturnPolicy(_SecureFuncName(_Dst, _Size, _TArg1, _TArg2, _TArg3, _TArg4), _Dst); \ } \ template <> \ inline \ --- 1161,1171 ---- { \ return __insecure_##_FuncName(_Dst, _TArg1, _TArg2, _TArg3, _TArg4); \ } \ ! template \ inline \ ! _ReturnType __CRTDECL _FuncName(_DstType (&_Dst)[_Sz], _TType1 _TArg1, _TType2 _TArg2, _TType3 _TArg3, _TType4 _TArg4) \ { \ ! _ReturnPolicy(_SecureFuncName(_Dst, _Sz, _TArg1, _TArg2, _TArg3, _TArg4), _Dst); \ } \ template <> \ inline \ *************** typedef __time64_t time_t; /* time *** 1206,1216 **** { \ return __insecure_##_FuncName(_HArg1, _Dst, _TArg1); \ } \ ! template \ inline \ ! _ReturnType __CRTDECL _FuncName(_HType1 _HArg1, _DstType (&_Dst)[_Size], _TType1 _TArg1) \ { \ ! _ReturnPolicy(_SecureFuncName(_HArg1, _Dst, _Size, _TArg1), _Dst); \ } \ template <> \ inline \ --- 1206,1216 ---- { \ return __insecure_##_FuncName(_HArg1, _Dst, _TArg1); \ } \ ! template \ inline \ ! _ReturnType __CRTDECL _FuncName(_HType1 _HArg1, _DstType (&_Dst)[_Sz], _TType1 _TArg1) \ { \ ! _ReturnPolicy(_SecureFuncName(_HArg1, _Dst, _Sz, _TArg1), _Dst); \ } \ template <> \ inline \ *************** typedef __time64_t time_t; /* time *** 1251,1261 **** { \ return __insecure_##_FuncName(_HArg1, _HArg2, _Dst); \ } \ ! template \ inline \ ! _ReturnType __CRTDECL _FuncName(_HType1 _HArg1, _HType2 _HArg2, _DstType (&_Dst)[_Size]) \ { \ ! _ReturnPolicy(_SecureFuncName(_HArg1, _HArg2, _Dst, _Size), _Dst); \ } \ template <> \ inline \ --- 1251,1261 ---- { \ return __insecure_##_FuncName(_HArg1, _HArg2, _Dst); \ } \ ! template \ inline \ ! _ReturnType __CRTDECL _FuncName(_HType1 _HArg1, _HType2 _HArg2, _DstType (&_Dst)[_Sz]) \ { \ ! _ReturnPolicy(_SecureFuncName(_HArg1, _HArg2, _Dst, _Sz), _Dst); \ } \ template <> \ inline \ *************** typedef __time64_t time_t; /* time *** 1312,1324 **** \ __pragma(warning(push)); \ __pragma(warning(disable: 4793)); \ ! template \ inline \ ! _ReturnType __CRTDECL _FuncName(_DstType (&_Dst)[_Size], _TType1 _TArg1, ...) \ { \ va_list _ArgList; \ _crt_va_start(_ArgList, _TArg1); \ ! _ReturnPolicy(_SecureVFuncName(_Dst, _Size, _TArg1, _ArgList), _Dst); \ } \ __pragma(warning(pop)); \ \ --- 1312,1324 ---- \ __pragma(warning(push)); \ __pragma(warning(disable: 4793)); \ ! template \ inline \ ! _ReturnType __CRTDECL _FuncName(_DstType (&_Dst)[_Sz], _TType1 _TArg1, ...) \ { \ va_list _ArgList; \ _crt_va_start(_ArgList, _TArg1); \ ! _ReturnPolicy(_SecureVFuncName(_Dst, _Sz, _TArg1, _ArgList), _Dst); \ } \ __pragma(warning(pop)); \ \ *************** typedef __time64_t time_t; /* time *** 1356,1366 **** { \ return __insecure_##_VFuncName(_Dst, _TArg1, _ArgList); \ } \ ! template \ inline \ ! _ReturnType __CRTDECL _VFuncName(_DstType (&_Dst)[_Size], _TType1 _TArg1, va_list _ArgList) \ { \ ! _ReturnPolicy(_SecureVFuncName(_Dst, _Size, _TArg1, _ArgList), _Dst); \ } \ template <> \ inline \ --- 1356,1366 ---- { \ return __insecure_##_VFuncName(_Dst, _TArg1, _ArgList); \ } \ ! template \ inline \ ! _ReturnType __CRTDECL _VFuncName(_DstType (&_Dst)[_Sz], _TType1 _TArg1, va_list _ArgList) \ { \ ! _ReturnPolicy(_SecureVFuncName(_Dst, _Sz, _TArg1, _ArgList), _Dst); \ } \ template <> \ inline \ *************** typedef __time64_t time_t; /* time *** 1417,1429 **** \ __pragma(warning(push)); \ __pragma(warning(disable: 4793)); \ ! template \ inline \ ! _ReturnType __CRTDECL _FuncName(_SecureDstType (&_Dst)[_Size], _TType1 _TArg1, _TType2 _TArg2, ...) \ { \ va_list _ArgList; \ _crt_va_start(_ArgList, _TArg2); \ ! _ReturnPolicy(_SecureVFuncName(_Dst, _Size, _TArg1, _TArg2, _ArgList), _Dst); \ } \ __pragma(warning(pop)); \ \ --- 1417,1429 ---- \ __pragma(warning(push)); \ __pragma(warning(disable: 4793)); \ ! template \ inline \ ! _ReturnType __CRTDECL _FuncName(_SecureDstType (&_Dst)[_Sz], _TType1 _TArg1, _TType2 _TArg2, ...) \ { \ va_list _ArgList; \ _crt_va_start(_ArgList, _TArg2); \ ! _ReturnPolicy(_SecureVFuncName(_Dst, _Sz, _TArg1, _TArg2, _ArgList), _Dst); \ } \ __pragma(warning(pop)); \ \ *************** typedef __time64_t time_t; /* time *** 1461,1471 **** { \ return __insecure_##_VFuncName(_Dst, _TArg1, _TArg2, _ArgList); \ } \ ! template \ inline \ ! _ReturnType __CRTDECL _VFuncName(_SecureDstType (&_Dst)[_Size], _TType1 _TArg1, _TType2 _TArg2, va_list _ArgList) \ { \ ! _ReturnPolicy(_SecureVFuncName(_Dst, _Size, _TArg1, _TArg2, _ArgList), _Dst); \ } \ template <> \ inline \ --- 1461,1471 ---- { \ return __insecure_##_VFuncName(_Dst, _TArg1, _TArg2, _ArgList); \ } \ ! template \ inline \ ! _ReturnType __CRTDECL _VFuncName(_SecureDstType (&_Dst)[_Sz], _TType1 _TArg1, _TType2 _TArg2, va_list _ArgList) \ { \ ! _ReturnPolicy(_SecureVFuncName(_Dst, _Sz, _TArg1, _TArg2, _ArgList), _Dst); \ } \ template <> \ inline \ *************** typedef __time64_t time_t; /* time *** 1506,1517 **** { \ return __insecure_##_FuncName(_Dst, _TArg1, _TArg2); \ } \ ! template \ inline \ ! size_t __CRTDECL _FuncName(_SecureDstType (&_Dst)[_Size], _TType1 _TArg1, _TType2 _TArg2) \ { \ size_t _Ret = 0; \ ! _SecureFuncName(&_Ret, _Dst, _Size, _TArg1, _TArg2); \ return (_Ret > 0 ? (_Ret - 1) : _Ret); \ } \ template <> \ --- 1506,1517 ---- { \ return __insecure_##_FuncName(_Dst, _TArg1, _TArg2); \ } \ ! template \ inline \ ! size_t __CRTDECL _FuncName(_SecureDstType (&_Dst)[_Sz], _TType1 _TArg1, _TType2 _TArg2) \ { \ size_t _Ret = 0; \ ! _SecureFuncName(&_Ret, _Dst, _Sz, _TArg1, _TArg2); \ return (_Ret > 0 ? (_Ret - 1) : _Ret); \ } \ template <> \ *************** typedef __time64_t time_t; /* time *** 1555,1566 **** { \ return __insecure_##_FuncName(_Dst, _TArg1, _TArg2, _TArg3); \ } \ ! template \ inline \ ! size_t __CRTDECL _FuncName(_SecureDstType (&_Dst)[_Size], _TType1 _TArg1, _TType2 _TArg2, _TType3 _TArg3) \ { \ size_t _Ret = 0; \ ! _SecureFuncName(&_Ret, _Dst, _Size, _TArg1, _TArg2, _TArg3); \ return (_Ret > 0 ? (_Ret - 1) : _Ret); \ } \ template <> \ --- 1555,1566 ---- { \ return __insecure_##_FuncName(_Dst, _TArg1, _TArg2, _TArg3); \ } \ ! template \ inline \ ! size_t __CRTDECL _FuncName(_SecureDstType (&_Dst)[_Sz], _TType1 _TArg1, _TType2 _TArg2, _TType3 _TArg3) \ { \ size_t _Ret = 0; \ ! _SecureFuncName(&_Ret, _Dst, _Sz, _TArg1, _TArg2, _TArg3); \ return (_Ret > 0 ? (_Ret - 1) : _Ret); \ } \ template <> \ *************** typedef __time64_t time_t; /* time *** 1602,1612 **** { \ return __insecure_##_FuncName(_Dst); \ } \ ! template \ inline \ ! _ReturnType __CRTDECL _FuncName(_SecureDstType (&_Dst)[_Size]) \ { \ ! _ReturnPolicy(_SecureFuncName(_Dst, _Size), _Dst); \ } \ template <> \ inline \ --- 1602,1612 ---- { \ return __insecure_##_FuncName(_Dst); \ } \ ! template \ inline \ ! _ReturnType __CRTDECL _FuncName(_SecureDstType (&_Dst)[_Sz]) \ { \ ! _ReturnPolicy(_SecureFuncName(_Dst, _Sz), _Dst); \ } \ template <> \ inline \ *************** typedef __time64_t time_t; /* time *** 1645,1655 **** { \ return __insecure_##_FuncName(_Dst, _TArg1); \ } \ ! template \ inline \ ! _ReturnType __CRTDECL _FuncName(_SecureDstType (&_Dst)[_Size], _TType1 _TArg1) \ { \ ! _ReturnPolicy(_SecureFuncName(_Dst, _Size, _TArg1), _Dst); \ } \ template <> \ inline \ --- 1645,1655 ---- { \ return __insecure_##_FuncName(_Dst, _TArg1); \ } \ ! template \ inline \ ! _ReturnType __CRTDECL _FuncName(_SecureDstType (&_Dst)[_Sz], _TType1 _TArg1) \ { \ ! _ReturnPolicy(_SecureFuncName(_Dst, _Sz, _TArg1), _Dst); \ } \ template <> \ inline \ *************** typedef __time64_t time_t; /* time *** 1688,1698 **** { \ return __insecure_##_FuncName(_Dst, _TArg1, _TArg2); \ } \ ! template \ inline \ ! _ReturnType __CRTDECL _FuncName(_SecureDstType (&_Dst)[_Size], _TType1 _TArg1, _TType2 _TArg2) \ { \ ! _ReturnPolicy(_SecureFuncName(_Dst, _Size, _TArg1, _TArg2), _Dst); \ } \ template <> \ inline \ --- 1688,1698 ---- { \ return __insecure_##_FuncName(_Dst, _TArg1, _TArg2); \ } \ ! template \ inline \ ! _ReturnType __CRTDECL _FuncName(_SecureDstType (&_Dst)[_Sz], _TType1 _TArg1, _TType2 _TArg2) \ { \ ! _ReturnPolicy(_SecureFuncName(_Dst, _Sz, _TArg1, _TArg2), _Dst); \ } \ template <> \ inline \ *************** typedef __time64_t time_t; /* time *** 1731,1741 **** { \ return __insecure_##_FuncName(_Dst, _TArg1, _TArg2, _TArg3); \ } \ ! template \ inline \ ! _ReturnType __CRTDECL _FuncName(_SecureDstType (&_Dst)[_Size], _TType1 _TArg1, _TType2 _TArg2, _TType3 _TArg3) \ { \ ! _ReturnPolicy(_SecureFuncName(_Dst, _Size, _TArg1, _TArg2, _TArg3), _Dst); \ } \ template <> \ inline \ --- 1731,1741 ---- { \ return __insecure_##_FuncName(_Dst, _TArg1, _TArg2, _TArg3); \ } \ ! template \ inline \ ! _ReturnType __CRTDECL _FuncName(_SecureDstType (&_Dst)[_Sz], _TType1 _TArg1, _TType2 _TArg2, _TType3 _TArg3) \ { \ ! _ReturnPolicy(_SecureFuncName(_Dst, _Sz, _TArg1, _TArg2, _TArg3), _Dst); \ } \ template <> \ inline \ Index: deque =================================================================== RCS file: /cvsroot/GxInclude/Vc9sp1/Include/deque,v retrieving revision 1.1 retrieving revision 1.2 diff -c -3 -p -r1.1 -r1.2 *** deque 6 Jan 2009 21:18:02 -0000 1.1 --- deque 6 Jan 2009 21:21:23 -0000 1.2 *************** public: *** 61,68 **** _Deque_const_iterator<_Ty, _Alloc, false>, _Unchanged_checked_iterator_base_type_tag>::_Result _Checked_iterator_base_type; ! friend _Deque_const_iterator<_Ty, _Alloc, false>; ! friend _Deque_const_iterator<_Ty, _Alloc, true>; _Deque_const_iterator<_Ty, _Alloc, false> _Checked_iterator_base() const { --- 61,67 ---- _Deque_const_iterator<_Ty, _Alloc, false>, _Unchanged_checked_iterator_base_type_tag>::_Result _Checked_iterator_base_type; ! friend class _Deque_const_iterator<_Ty, _Alloc, !_SECURE_VALIDATION>; _Deque_const_iterator<_Ty, _Alloc, false> _Checked_iterator_base() const { *************** public: *** 356,363 **** _Deque_iterator<_Ty, _Alloc, false>, _Unchanged_checked_iterator_base_type_tag>::_Result _Checked_iterator_base_type; ! friend _Deque_iterator<_Ty, _Alloc, false>; ! friend _Deque_iterator<_Ty, _Alloc, true>; _Deque_iterator<_Ty, _Alloc, false> _Checked_iterator_base() const { --- 355,361 ---- _Deque_iterator<_Ty, _Alloc, false>, _Unchanged_checked_iterator_base_type_tag>::_Result _Checked_iterator_base_type; ! friend class _Deque_iterator<_Ty, _Alloc, !_SECURE_VALIDATION>; _Deque_iterator<_Ty, _Alloc, false> _Checked_iterator_base() const { *************** public: *** 376,382 **** { // construct with null vector pointer } ! _Deque_iterator(size_type _Off, const _Mybase::_Mydequebase *_Pdeque) : _Mybase(_Off, _Pdeque) { // construct with offset _Off in *_Pdeque } --- 374,380 ---- { // construct with null vector pointer } ! _Deque_iterator(size_type _Off, const typename _Mybase::_Mydequebase *_Pdeque) : _Mybase(_Off, _Pdeque) { // construct with offset _Off in *_Pdeque } Index: eh.h =================================================================== RCS file: /cvsroot/GxInclude/Vc9sp1/Include/eh.h,v retrieving revision 1.1 retrieving revision 1.2 diff -c -3 -p -r1.1 -r1.2 *** eh.h 6 Jan 2009 21:18:02 -0000 1.1 --- eh.h 6 Jan 2009 21:21:23 -0000 1.2 *************** *** 30,35 **** --- 30,38 ---- #error "eh.h is only for C++!" #endif + namespace std { class type_info; } + using std::type_info; + /* terminate_handler is the standard name; terminate_function is supported for historical reasons */ #ifndef _M_CEE_PURE typedef void (__cdecl *terminate_function)(); Index: iosfwd =================================================================== RCS file: /cvsroot/GxInclude/Vc9sp1/Include/iosfwd,v retrieving revision 1.1 retrieving revision 1.2 diff -c -3 -p -r1.1 -r1.2 *** iosfwd 6 Jan 2009 21:18:02 -0000 1.1 --- iosfwd 6 Jan 2009 21:21:23 -0000 1.2 *************** struct _Secure_char_traits_tag *** 145,150 **** --- 145,184 ---- { }; + /* ------------------------------------------------------------------------ */ + /* Forward declare these now because they are used as non-dependent names. */ + namespace _Traits_helper + { + template + inline + typename _Traits::char_type *copy_s(typename _Traits::char_type *_First1, size_t _Size, + const typename _Traits::char_type *_First2, size_t _Count); + template + inline + typename _Traits::char_type *copy_s(typename _Traits::char_type *_First1, size_t _Size, + const typename _Traits::char_type *_First2, size_t _Count, _Secure_char_traits_tag); + template + inline + _SCL_INSECURE_DEPRECATE + typename _Traits::char_type *copy_s(typename _Traits::char_type *_First1, size_t _Size, + const typename _Traits::char_type *_First2, size_t _Count, _Unsecure_char_traits_tag); + template + inline + typename _Traits::char_type *move_s(typename _Traits::char_type *_First1, size_t _Size, + const typename _Traits::char_type *_First2, size_t _Count); + template + inline + typename _Traits::char_type *move_s(typename _Traits::char_type *_First1, size_t _Size, + const typename _Traits::char_type *_First2, size_t _Count, _Secure_char_traits_tag); + template + inline + _SCL_INSECURE_DEPRECATE + typename _Traits::char_type *move_s(typename _Traits::char_type *_First1, size_t _Size, + const typename _Traits::char_type *_First2, size_t _Count, _Unsecure_char_traits_tag); + + } // namespace _Traits_helper + /* ------------------------------------------------------------------------ */ + // TEMPLATE STRUCT _Char_traits_base // Used to define the Secure_char_traits tag. This typedef is used // only for user defined char_traits. A user defined char_traits should Index: iterator =================================================================== RCS file: /cvsroot/GxInclude/Vc9sp1/Include/iterator,v retrieving revision 1.1 retrieving revision 1.2 diff -c -3 -p -r1.1 -r1.2 *** iterator 6 Jan 2009 21:18:02 -0000 1.1 --- iterator 6 Jan 2009 21:21:23 -0000 1.2 *************** template ::pointer, typename _STD iterator_traits<_Iter>::reference> { ! friend class checked_iterator; public: typedef checked_iterator<_Cont, _Iter> _Myt; typedef typename _STD iterator_traits<_Iter>::difference_type difference_type; --- 361,367 ---- typename _STD iterator_traits<_Iter>::pointer, typename _STD iterator_traits<_Iter>::reference> { ! //friend class checked_iterator; public: typedef checked_iterator<_Cont, _Iter> _Myt; typedef typename _STD iterator_traits<_Iter>::difference_type difference_type; Index: limits =================================================================== RCS file: /cvsroot/GxInclude/Vc9sp1/Include/limits,v retrieving revision 1.1 retrieving revision 1.2 diff -c -3 -p -r1.1 -r1.2 *** limits 6 Jan 2009 21:18:02 -0000 1.1 --- limits 6 Jan 2009 21:21:23 -0000 1.2 *************** _STCONSDEF(_Num_base, int, min_exponent) *** 93,110 **** _STCONSDEF(_Num_base, int, min_exponent10) _STCONSDEF(_Num_base, int, radix) // TEMPLATE CLASS numeric_limits template class numeric_limits : public _Num_base { // numeric limits for arbitrary type _Ty (say little or nothing) public: ! static _Ty (__CRTDECL min)() _THROW0() { // return minimum value return (_Ty(0)); } ! static _Ty (__CRTDECL max)() _THROW0() { // return maximum value return (_Ty(0)); } --- 93,112 ---- _STCONSDEF(_Num_base, int, min_exponent10) _STCONSDEF(_Num_base, int, radix) + #define __GCCXML_AVOID_MACRO_EXPANSION + // TEMPLATE CLASS numeric_limits template class numeric_limits : public _Num_base { // numeric limits for arbitrary type _Ty (say little or nothing) public: ! static _Ty __CRTDECL min __GCCXML_AVOID_MACRO_EXPANSION() _THROW0() { // return minimum value return (_Ty(0)); } ! static _Ty __CRTDECL max __GCCXML_AVOID_MACRO_EXPANSION() _THROW0() { // return maximum value return (_Ty(0)); } Index: list =================================================================== RCS file: /cvsroot/GxInclude/Vc9sp1/Include/list,v retrieving revision 1.1 retrieving revision 1.2 diff -c -3 -p -r1.1 -r1.2 *** list 6 Jan 2009 21:18:02 -0000 1.1 --- list 6 Jan 2009 21:21:23 -0000 1.2 *************** public: *** 191,198 **** _Const_iterator, _Unchanged_checked_iterator_base_type_tag>::_Result _Checked_iterator_base_type; ! friend _Const_iterator; ! friend _Const_iterator; _Const_iterator _Checked_iterator_base() const { --- 191,197 ---- _Const_iterator, _Unchanged_checked_iterator_base_type_tag>::_Result _Checked_iterator_base_type; ! friend class _Const_iterator; _Const_iterator _Checked_iterator_base() const { *************** public: *** 373,380 **** _Iterator, _Unchanged_checked_iterator_base_type_tag>::_Result _Checked_iterator_base_type; ! friend _Iterator; ! friend _Iterator; _Iterator _Checked_iterator_base() const { --- 372,378 ---- _Iterator, _Unchanged_checked_iterator_base_type_tag>::_Result _Checked_iterator_base_type; ! friend class _Iterator; _Iterator _Checked_iterator_base() const { Index: locale =================================================================== RCS file: /cvsroot/GxInclude/Vc9sp1/Include/locale,v retrieving revision 1.1 retrieving revision 1.2 diff -c -3 -p -r1.1 -r1.2 *** locale 6 Jan 2009 21:18:02 -0000 1.1 --- locale 6 Jan 2009 21:21:23 -0000 1.2 *************** public: *** 64,71 **** const locale *_Ploc = 0) { // return locale category mask and construct standard facet if (_Ppf != 0 && *_Ppf == 0) ! *_Ppf = _NEW_CRT collate<_Elem>( ! _Locinfo(_Ploc->name())); return (_X_COLLATE); } --- 64,73 ---- const locale *_Ploc = 0) { // return locale category mask and construct standard facet if (_Ppf != 0 && *_Ppf == 0) ! { ! _Locinfo _Loc(_Ploc->name()); ! *_Ppf = _NEW_CRT collate<_Elem>(_Loc); ! } return (_X_COLLATE); } Index: memory =================================================================== RCS file: /cvsroot/GxInclude/Vc9sp1/Include/memory,v retrieving revision 1.1 retrieving revision 1.2 diff -c -3 -p -r1.1 -r1.2 *** memory 6 Jan 2009 21:18:02 -0000 1.1 --- memory 6 Jan 2009 21:21:23 -0000 1.2 *************** *** 10,15 **** --- 10,26 ---- #pragma pack(push,_CRT_PACKING) #pragma warning(push,3) #endif /* _MSC_VER */ + + /* ------------------------------------------------------------------------ */ + /* Forward declare these now because they are used as non-dependent names. */ + _STDEXT_BEGIN + template + inline _FwdIt unchecked_uninitialized_copy(_InIt _First, _InIt _Last, _FwdIt _Dest); + template + inline _FwdIt unchecked_uninitialized_copy(_InIt _First, _InIt _Last, _FwdIt _Dest, _Alloc& _Al); + _STDEXT_END + /* ------------------------------------------------------------------------ */ + _STD_BEGIN // TEMPLATE FUNCTION get_temporary_buffer Index: sal.h =================================================================== RCS file: /cvsroot/GxInclude/Vc9sp1/Include/sal.h,v retrieving revision 1.1 retrieving revision 1.2 diff -c -3 -p -r1.1 -r1.2 *** sal.h 6 Jan 2009 21:18:02 -0000 1.1 --- sal.h 6 Jan 2009 21:21:23 -0000 1.2 *************** *** 107,113 **** // choose attribute or __declspec implementation #ifndef _USE_DECLSPECS_FOR_SAL ! #define _USE_DECLSPECS_FOR_SAL 0 #endif #if _USE_DECLSPECS_FOR_SAL --- 107,113 ---- // choose attribute or __declspec implementation #ifndef _USE_DECLSPECS_FOR_SAL ! #define _USE_DECLSPECS_FOR_SAL 1 #endif #if _USE_DECLSPECS_FOR_SAL Index: setjmp.h =================================================================== RCS file: /cvsroot/GxInclude/Vc9sp1/Include/setjmp.h,v retrieving revision 1.1 retrieving revision 1.2 diff -c -3 -p -r1.1 -r1.2 *** setjmp.h 6 Jan 2009 21:18:02 -0000 1.1 --- setjmp.h 6 Jan 2009 21:21:23 -0000 1.2 *************** int __cdecl setjmp(_Out_ jmp_buf _Buf); *** 253,259 **** #ifdef __cplusplus extern "C" { ! _CRTIMP __declspec(noreturn) void __cdecl longjmp(_In_ jmp_buf _Buf, _In_ int _Value) throw(...); } #else _CRTIMP __declspec(noreturn) void __cdecl longjmp(_In_ jmp_buf _Buf, _In_ int _Value); --- 253,259 ---- #ifdef __cplusplus extern "C" { ! _CRTIMP __declspec(noreturn) void __cdecl longjmp(_In_ jmp_buf _Buf, _In_ int _Value); } #else _CRTIMP __declspec(noreturn) void __cdecl longjmp(_In_ jmp_buf _Buf, _In_ int _Value); Index: stddef.h =================================================================== RCS file: /cvsroot/GxInclude/Vc9sp1/Include/stddef.h,v retrieving revision 1.1 retrieving revision 1.2 diff -c -3 -p -r1.1 -r1.2 *** stddef.h 6 Jan 2009 21:18:02 -0000 1.1 --- stddef.h 9 Jan 2009 13:47:14 -0000 1.2 *************** errno_t __cdecl _get_errno(_Out_ int * _ *** 46,51 **** --- 46,53 ---- #endif /* Define offsetof macro */ + #define offsetof(s,m) ((size_t)__builtin_offsetof(s,m)) + #if 0 /* replaced for gccxml */ #ifdef __cplusplus #ifdef _WIN64 *************** errno_t __cdecl _get_errno(_Out_ int * _ *** 63,68 **** --- 65,71 ---- #endif #endif /* __cplusplus */ + #endif /* 0 */ #ifdef _MT _CRTIMP extern unsigned long __cdecl __threadid(void); Index: typeinfo =================================================================== RCS file: /cvsroot/GxInclude/Vc9sp1/Include/typeinfo,v retrieving revision 1.1 retrieving revision 1.2 diff -c -3 -p -r1.1 -r1.2 *** typeinfo 6 Jan 2009 21:19:55 -0000 1.1 --- typeinfo 6 Jan 2009 21:21:23 -0000 1.2 *************** struct __type_info_node { *** 40,45 **** --- 40,46 ---- extern __type_info_node __type_info_root_node; + namespace std { class type_info { public: virtual ~type_info(); *************** private: *** 56,61 **** --- 57,64 ---- _CRTIMP_PURE static const char *__CLRCALL_OR_CDECL _Name_base(const type_info *,__type_info_node* __ptype_info_node); _CRTIMP_PURE static void __CLRCALL_OR_CDECL _Type_info_dtor(type_info *); }; + } + using std::type_info; #if _HAS_EXCEPTIONS Index: vector =================================================================== RCS file: /cvsroot/GxInclude/Vc9sp1/Include/vector,v retrieving revision 1.1 retrieving revision 1.2 diff -c -3 -p -r1.1 -r1.2 *** vector 6 Jan 2009 21:19:55 -0000 1.1 --- vector 6 Jan 2009 21:21:23 -0000 1.2 *************** public: *** 2246,2252 **** void flip() { // toggle all elements ! for (_Vbtype::iterator _Next = _Myvec.begin(); _Next != _Myvec.end(); ++_Next) *_Next = (_Vbase)~*_Next; _Trim(_Mysize); --- 2246,2252 ---- void flip() { // toggle all elements ! for (typename _Vbtype::iterator _Next = _Myvec.begin(); _Next != _Myvec.end(); ++_Next) *_Next = (_Vbase)~*_Next; _Trim(_Mysize); Index: xdebug =================================================================== RCS file: /cvsroot/GxInclude/Vc9sp1/Include/xdebug,v retrieving revision 1.1 retrieving revision 1.2 diff -c -3 -p -r1.1 -r1.2 *** xdebug 6 Jan 2009 21:19:25 -0000 1.1 --- xdebug 19 May 2009 12:59:33 -0000 1.2 *************** template *** 55,61 **** --- 55,63 ---- { // delete from the debug CRT heap even if operator delete exists if (_Ptr != 0) { // worth deleting + #if 0 _Ptr->~_Ty(); + #endif // delete as _NORMAL_BLOCK, not _CRT_BLOCK, since we might have // facets allocated by normal new. free(_Ptr); *************** public: *** 72,78 **** template struct rebind { // convert _DebugHeapAllocator<_Ty> to _DebugHeapAllocator<_Other> ! typedef typename _DebugHeapAllocator<_Other> other; }; typename allocator<_Ty>::pointer __CLRCALL_OR_CDECL allocate(typename allocator<_Ty>::size_type _Count, const void *) --- 74,80 ---- template struct rebind { // convert _DebugHeapAllocator<_Ty> to _DebugHeapAllocator<_Other> ! typedef _DebugHeapAllocator<_Other> other; }; typename allocator<_Ty>::pointer __CLRCALL_OR_CDECL allocate(typename allocator<_Ty>::size_type _Count, const void *) Index: xhash =================================================================== RCS file: /cvsroot/GxInclude/Vc9sp1/Include/xhash,v retrieving revision 1.1 retrieving revision 1.2 diff -c -3 -p -r1.1 -r1.2 *** xhash 6 Jan 2009 21:19:25 -0000 1.1 --- xhash 6 Jan 2009 21:21:23 -0000 1.2 *************** public: *** 303,309 **** } protected: ! typename _Mylist::_Iterator<0> _Mypos; }; typedef _List_position _Myvec_value_type; --- 303,309 ---- } protected: ! typename _Mylist::template _Iterator<0> _Mypos; }; typedef _List_position _Myvec_value_type; Index: xlocale =================================================================== RCS file: /cvsroot/GxInclude/Vc9sp1/Include/xlocale,v retrieving revision 1.1 retrieving revision 1.2 diff -c -3 -p -r1.1 -r1.2 *** xlocale 6 Jan 2009 21:19:25 -0000 1.1 --- xlocale 6 Jan 2009 21:21:23 -0000 1.2 *************** template *** 54,59 **** --- 54,61 ---- class locale; template const _Facet& __CRTDECL use_facet(const locale&); + template + class collate; // warning 4412 is benign here #pragma warning(push) *************** public: *** 782,789 **** const locale *_Ploc = 0) { // return locale category mask and construct standard facet if (_Ppf != 0 && *_Ppf == 0) ! *_Ppf = _NEW_CRT codecvt<_Elem, _Byte, _Statype>( ! _Locinfo(_Ploc->name())); return (_X_CTYPE); } --- 784,793 ---- const locale *_Ploc = 0) { // return locale category mask and construct standard facet if (_Ppf != 0 && *_Ppf == 0) ! { ! _Locinfo _Loc(_Ploc->name()); ! *_Ppf = _NEW_CRT codecvt<_Elem, _Byte, _Statype>(_Loc); ! } return (_X_CTYPE); } *************** public: *** 900,907 **** const locale *_Ploc = 0) { // return locale category mask and construct standard facet if (_Ppf != 0 && *_Ppf == 0) ! *_Ppf = _NEW_CRT codecvt<_Elem, _Byte, _Statype>( ! _Locinfo(_Ploc->name())); return (_X_CTYPE); } --- 904,913 ---- const locale *_Ploc = 0) { // return locale category mask and construct standard facet if (_Ppf != 0 && *_Ppf == 0) ! { ! _Locinfo _Loc(_Ploc->name()); ! *_Ppf = _NEW_CRT codecvt<_Elem, _Byte, _Statype>(_Loc); ! } return (_X_CTYPE); } *************** public: *** 1142,1149 **** const locale *_Ploc = 0) { // return locale category mask and construct standard facet if (_Ppf != 0 && *_Ppf == 0) ! *_Ppf = _NEW_CRT codecvt<_Elem, _Byte, _Statype>( ! _Locinfo(_Ploc->name())); return (_X_CTYPE); } --- 1148,1157 ---- const locale *_Ploc = 0) { // return locale category mask and construct standard facet if (_Ppf != 0 && *_Ppf == 0) ! { ! _Locinfo _Loc(_Ploc->name()); ! *_Ppf = _NEW_CRT codecvt<_Elem, _Byte, _Statype>(_Loc); ! } return (_X_CTYPE); } *************** public: *** 1484,1491 **** const locale *_Ploc = 0) { // return locale category mask and construct standard facet if (_Ppf != 0 && *_Ppf == 0) ! *_Ppf = _NEW_CRT ctype<_Elem>( ! _Locinfo(_Ploc->name())); return (_X_CTYPE); } --- 1492,1501 ---- const locale *_Ploc = 0) { // return locale category mask and construct standard facet if (_Ppf != 0 && *_Ppf == 0) ! { ! _Locinfo _Loc(_Ploc->name()); ! *_Ppf = _NEW_CRT ctype<_Elem>(_Loc); ! } return (_X_CTYPE); } *************** public: *** 1789,1796 **** const locale *_Ploc = 0) { // return locale category mask and construct standard facet if (_Ppf != 0 && *_Ppf == 0) ! *_Ppf = _NEW_CRT ctype<_Elem>( ! _Locinfo(_Ploc->name())); return (_X_CTYPE); } --- 1799,1808 ---- const locale *_Ploc = 0) { // return locale category mask and construct standard facet if (_Ppf != 0 && *_Ppf == 0) ! { ! _Locinfo _Loc(_Ploc->name()); ! *_Ppf = _NEW_CRT ctype<_Elem>(_Loc); ! } return (_X_CTYPE); } *************** public: *** 2030,2037 **** const locale *_Ploc = 0) { // return locale category mask and construct standard facet if (_Ppf != 0 && *_Ppf == 0) ! *_Ppf = _NEW_CRT ctype<_Elem>( ! _Locinfo(_Ploc->name())); return (_X_CTYPE); } --- 2042,2051 ---- const locale *_Ploc = 0) { // return locale category mask and construct standard facet if (_Ppf != 0 && *_Ppf == 0) ! { ! _Locinfo _Loc(_Ploc->name()); ! *_Ppf = _NEW_CRT ctype<_Elem>(_Loc); ! } return (_X_CTYPE); } *************** public: *** 2304,2311 **** const locale *_Ploc = 0) { // return locale category mask and construct standard facet if (_Ppf != 0 && *_Ppf == 0) ! *_Ppf = _NEW_CRT ctype<_Elem>( ! _Locinfo(_Ploc->name())); return (_X_CTYPE); } --- 2318,2327 ---- const locale *_Ploc = 0) { // return locale category mask and construct standard facet if (_Ppf != 0 && *_Ppf == 0) ! { ! _Locinfo _Loc(_Ploc->name()); ! *_Ppf = _NEW_CRT ctype<_Elem>(_Loc); ! } return (_X_CTYPE); } Index: xlocmes =================================================================== RCS file: /cvsroot/GxInclude/Vc9sp1/Include/xlocmes,v retrieving revision 1.1 retrieving revision 1.2 diff -c -3 -p -r1.1 -r1.2 *** xlocmes 6 Jan 2009 21:19:25 -0000 1.1 --- xlocmes 6 Jan 2009 21:21:23 -0000 1.2 *************** public: *** 76,83 **** const locale *_Ploc = 0) { // return locale category mask and construct standard facet if (_Ppf != 0 && *_Ppf == 0) ! *_Ppf = _NEW_CRT messages<_Elem>( ! _Locinfo(_Ploc->name())); return (_X_MESSAGES); } --- 76,85 ---- const locale *_Ploc = 0) { // return locale category mask and construct standard facet if (_Ppf != 0 && *_Ppf == 0) ! { ! _Locinfo _Loc(_Ploc->name()); ! *_Ppf = _NEW_CRT messages<_Elem>(_Loc); ! } return (_X_MESSAGES); } Index: xlocmon =================================================================== RCS file: /cvsroot/GxInclude/Vc9sp1/Include/xlocmon,v retrieving revision 1.1 retrieving revision 1.2 diff -c -3 -p -r1.1 -r1.2 *** xlocmon 6 Jan 2009 21:19:25 -0000 1.1 --- xlocmon 6 Jan 2009 21:21:23 -0000 1.2 *************** public: *** 280,287 **** const locale *_Ploc = 0) { // return locale category mask and construct standard facet if (_Ppf != 0 && *_Ppf == 0) ! *_Ppf = _NEW_CRT moneypunct<_Elem, _Intl>( ! _Locinfo(_Ploc->name()), 0, true); return (_X_MONETARY); } --- 280,289 ---- const locale *_Ploc = 0) { // return locale category mask and construct standard facet if (_Ppf != 0 && *_Ppf == 0) ! { ! _Locinfo _Loc(_Ploc->name()); ! *_Ppf = _NEW_CRT moneypunct<_Elem, _Intl>(_Loc, 0, true); ! } return (_X_MONETARY); } *************** public: *** 373,380 **** const locale *_Ploc = 0) { // return locale category mask and construct standard facet if (_Ppf != 0 && *_Ppf == 0) ! *_Ppf = _NEW_CRT money_get<_Elem, _InIt>( ! _Locinfo(_Ploc->name())); return (_X_MONETARY); } --- 375,384 ---- const locale *_Ploc = 0) { // return locale category mask and construct standard facet if (_Ppf != 0 && *_Ppf == 0) ! { ! _Locinfo _Loc(_Ploc->name()); ! *_Ppf = _NEW_CRT money_get<_Elem, _InIt>(_Loc); ! } return (_X_MONETARY); } *************** public: *** 666,673 **** const locale *_Ploc = 0) { // return locale category mask and construct standard facet if (_Ppf != 0 && *_Ppf == 0) ! *_Ppf = _NEW_CRT money_put<_Elem, _OutIt>( ! _Locinfo(_Ploc->name())); return (_X_MONETARY); } --- 670,679 ---- const locale *_Ploc = 0) { // return locale category mask and construct standard facet if (_Ppf != 0 && *_Ppf == 0) ! { ! _Locinfo _Loc(_Ploc->name()); ! *_Ppf = _NEW_CRT money_put<_Elem, _OutIt>(_Loc); ! } return (_X_MONETARY); } Index: xlocnum =================================================================== RCS file: /cvsroot/GxInclude/Vc9sp1/Include/xlocnum,v retrieving revision 1.1 retrieving revision 1.2 diff -c -3 -p -r1.1 -r1.2 *** xlocnum 6 Jan 2009 21:19:25 -0000 1.1 --- xlocnum 6 Jan 2009 21:21:23 -0000 1.2 *************** public: *** 111,118 **** const locale *_Ploc = 0) { // return locale category mask and construct standard facet if (_Ppf != 0 && *_Ppf == 0) ! *_Ppf = _NEW_CRT numpunct<_Elem>( ! _Locinfo(_Ploc->name()), 0, true); return (_X_NUMERIC); } --- 111,120 ---- const locale *_Ploc = 0) { // return locale category mask and construct standard facet if (_Ppf != 0 && *_Ppf == 0) ! { ! _Locinfo _Loc(_Ploc->name()); ! *_Ppf = _NEW_CRT numpunct<_Elem>(_Loc, 0, true); ! } return (_X_NUMERIC); } *************** public: *** 236,243 **** const locale *_Ploc = 0) { // return locale category mask and construct standard facet if (_Ppf != 0 && *_Ppf == 0) ! *_Ppf = _NEW_CRT num_get<_Elem, _InIt>( ! _Locinfo(_Ploc->name())); return (_X_NUMERIC); } --- 238,247 ---- const locale *_Ploc = 0) { // return locale category mask and construct standard facet if (_Ppf != 0 && *_Ppf == 0) ! { ! _Locinfo _Loc(_Ploc->name()); ! *_Ppf = _NEW_CRT num_get<_Elem, _InIt>(_Loc); ! } return (_X_NUMERIC); } *************** public: *** 1029,1036 **** const locale *_Ploc = 0) { // return locale category mask and construct standard facet if (_Ppf != 0 && *_Ppf == 0) ! *_Ppf = _NEW_CRT num_put<_Elem, _OutIt>( ! _Locinfo(_Ploc->name())); return (_X_NUMERIC); } --- 1033,1042 ---- const locale *_Ploc = 0) { // return locale category mask and construct standard facet if (_Ppf != 0 && *_Ppf == 0) ! { ! _Locinfo _Loc(_Ploc->name()); ! *_Ppf = _NEW_CRT num_put<_Elem, _OutIt>(_Loc); ! } return (_X_NUMERIC); } Index: xloctime =================================================================== RCS file: /cvsroot/GxInclude/Vc9sp1/Include/xloctime,v retrieving revision 1.1 retrieving revision 1.2 diff -c -3 -p -r1.1 -r1.2 *** xloctime 6 Jan 2009 21:19:25 -0000 1.1 --- xloctime 6 Jan 2009 21:21:23 -0000 1.2 *************** public: *** 97,104 **** const locale *_Ploc = 0) { // return locale category mask and construct standard facet if (_Ppf != 0 && *_Ppf == 0) ! *_Ppf = _NEW_CRT time_get<_Elem, _InIt>( ! _Locinfo(_Ploc->name())); return (_X_TIME); } --- 97,106 ---- const locale *_Ploc = 0) { // return locale category mask and construct standard facet if (_Ppf != 0 && *_Ppf == 0) ! { ! _Locinfo _Loc(_Ploc->name()); ! *_Ppf = _NEW_CRT time_get<_Elem, _InIt>(_Loc); ! } return (_X_TIME); } *************** public: *** 458,465 **** const locale *_Ploc = 0) { // return locale category mask and construct standard facet if (_Ppf != 0 && *_Ppf == 0) ! *_Ppf = _NEW_CRT time_put<_Elem, _OutIt>( ! _Locinfo(_Ploc->name())); return (_X_TIME); } --- 460,469 ---- const locale *_Ploc = 0) { // return locale category mask and construct standard facet if (_Ppf != 0 && *_Ppf == 0) ! { ! _Locinfo _Loc(_Ploc->name()); ! *_Ppf = _NEW_CRT time_put<_Elem, _OutIt>(_Loc); ! } return (_X_TIME); } *************** public: *** 591,598 **** const locale *_Ploc = 0) { // return locale category mask and construct standard facet if (_Ppf != 0 && *_Ppf == 0) ! *_Ppf = _NEW_CRT time_put<_Elem, _OutIt>( ! _Locinfo(_Ploc->name())); return (_X_TIME); } --- 595,604 ---- const locale *_Ploc = 0) { // return locale category mask and construct standard facet if (_Ppf != 0 && *_Ppf == 0) ! { ! _Locinfo _Loc(_Ploc->name()); ! *_Ppf = _NEW_CRT time_put<_Elem, _OutIt>(_Loc); ! } return (_X_TIME); } Index: xstddef =================================================================== RCS file: /cvsroot/GxInclude/Vc9sp1/Include/xstddef,v retrieving revision 1.1 retrieving revision 1.2 diff -c -3 -p -r1.1 -r1.2 *** xstddef 6 Jan 2009 21:19:25 -0000 1.1 --- xstddef 6 Jan 2009 21:21:23 -0000 1.2 *************** _STD_BEGIN *** 33,39 **** #endif /* _THROWS */ #define _THROW0() throw () ! #define _THROW1(x) throw (...) #define _THROW(x, y) throw x(y) #define _THROW_NCEE(x, y) _THROW(x, y) --- 33,39 ---- #endif /* _THROWS */ #define _THROW0() throw () ! #define _THROW1(x) throw (x) #define _THROW(x, y) throw x(y) #define _THROW_NCEE(x, y) _THROW(x, y) Index: xutility =================================================================== RCS file: /cvsroot/GxInclude/Vc9sp1/Include/xutility,v retrieving revision 1.1 retrieving revision 1.2 diff -c -3 -p -r1.1 -r1.2 *** xutility 6 Jan 2009 21:19:25 -0000 1.1 --- xutility 6 Jan 2009 21:21:23 -0000 1.2 *************** *** 12,19 **** --- 12,48 ---- #pragma warning(push,3) #endif /* _MSC_VER */ + /* GCC-XML simulation of MSVC builtin __is_base_of. */ + #define __is_base_of(base, derived) \ + __gccxml_is_base_of< base , derived >::value + template + struct __gccxml_is_base_of + { + typedef char(&yes_type)[1]; + typedef char(&no_type)[2]; + static yes_type check(_Base*); + static no_type check(const volatile void*); + static _Derived* derived(); + static const bool value = sizeof(check(derived())) == sizeof(yes_type); + }; + + /* ------------------------------------------------------------------------ */ + /* Forward declare these now because they are used as non-dependent names. */ + _STDEXT_BEGIN + template class checked_array_iterator; + template + checked_array_iterator<_Iter> make_checked_array_iterator(_Iter _Ptr, size_t _Size); + _STDEXT_END + /* ------------------------------------------------------------------------ */ + _STD_BEGIN + /* ------------------------------------------------------------------------ */ + /* Forward declare these now because they are used as non-dependent names. */ + class out_of_range; + class invalid_argument; + /* ------------------------------------------------------------------------ */ + // RANGE CHECKED ITERATOR TAGS struct _Unchecked_iterator_tag { *************** template inl *** 992,999 **** __CLRCALL_OR_CDECL _Iter_random(const _Iter1&, const _Iter2&) { // return category from iterator argument typename _Iter_random_helper< ! iterator_traits<_Iter1>::iterator_category, ! iterator_traits<_Iter2>::iterator_category>::_Iter_random_cat _Cat; return (_Cat); } --- 1021,1028 ---- __CLRCALL_OR_CDECL _Iter_random(const _Iter1&, const _Iter2&) { // return category from iterator argument typename _Iter_random_helper< ! typename iterator_traits<_Iter1>::iterator_category, ! typename iterator_traits<_Iter2>::iterator_category>::_Iter_random_cat _Cat; return (_Cat); } *************** template::iterator_category, ! iterator_traits<_Iter2>::iterator_category, ! iterator_traits<_Iter3>::iterator_category>::_Iter_random_cat _Cat; return (_Cat); } --- 1034,1042 ---- __CLRCALL_OR_CDECL _Iter_random(const _Iter1&, const _Iter2&, const _Iter3&) { // return category from iterator argument typename _Iter_random_helper3< ! typename iterator_traits<_Iter1>::iterator_category, ! typename iterator_traits<_Iter2>::iterator_category, ! typename iterator_traits<_Iter3>::iterator_category>::_Iter_random_cat _Cat; return (_Cat); } *************** public: *** 2162,2168 **** _Checked_iterator_base_type _Checked_iterator_base() const { ! typename _Checked_iterator_base_type _Base(_CHECKED_BASE(this->current)); return _Base; } --- 2191,2197 ---- _Checked_iterator_base_type _Checked_iterator_base() const { ! _Checked_iterator_base_type _Base(_CHECKED_BASE(this->current)); return _Base; } Index: xxmem_fn =================================================================== RCS file: /cvsroot/GxInclude/Vc9sp1/Include/xxmem_fn,v retrieving revision 1.1 retrieving revision 1.2 diff -c -3 -p -r1.1 -r1.2 *** xxmem_fn 6 Jan 2009 21:19:25 -0000 1.1 --- xxmem_fn 6 Jan 2009 21:37:23 -0000 1.2 *************** public: *** 29,41 **** // TEMPLATE FUNCTION mem_fn, pointer to member function template ! _NAME<_Rx, _Rx(__thiscall _Arg0::*)(_ARG1_ARG2), _ARG0_ARG1> ! mem_fn(_Rx(__thiscall _Arg0::*_Pm)(_ARG1_ARG2)) { // bind to pointer to member function ! return (_NAME<_Rx, _Rx(__thiscall _Arg0::*)(_ARG1_ARG2), _ARG0_ARG1>(_Pm)); } #ifdef _M_IX86 template --- 29,42 ---- // TEMPLATE FUNCTION mem_fn, pointer to member function template ! _NAME<_Rx, _Rx(_Arg0::*)(_ARG1_ARG2), _ARG0_ARG1> ! mem_fn(_Rx(_Arg0::*_Pm)(_ARG1_ARG2)) { // bind to pointer to member function ! return (_NAME<_Rx, _Rx(_Arg0::*)(_ARG1_ARG2), _ARG0_ARG1>(_Pm)); } + #if 0 // Disabled for gccxml #ifdef _M_IX86 template *************** template(_Pm)); } #endif /* _M_CEE */ // TEMPLATE FUNCTION mem_fn, pointer to const member function template ! _NAME<_Rx, _Rx(__thiscall _Arg0::*)(_ARG1_ARG2) const, const _ARG0_ARG1> ! mem_fn(_Rx(__thiscall _Arg0::*_Pm)(_ARG1_ARG2) const) { // bind to pointer to const member function ! return (_NAME<_Rx, _Rx(__thiscall _Arg0::*)(_ARG1_ARG2) const, const _ARG0_ARG1>(_Pm)); } #ifdef _M_IX86 template --- 79,98 ---- _ARG0_ARG1>(_Pm)); } #endif /* _M_CEE */ + #endif // Disabled for gccxml // TEMPLATE FUNCTION mem_fn, pointer to const member function template ! _NAME<_Rx, _Rx(_Arg0::*)(_ARG1_ARG2) const, const _ARG0_ARG1> ! mem_fn(_Rx(_Arg0::*_Pm)(_ARG1_ARG2) const) { // bind to pointer to const member function ! return (_NAME<_Rx, _Rx(_Arg0::*)(_ARG1_ARG2) const, const _ARG0_ARG1>(_Pm)); } + #if 0 // Disabled for gccxml #ifdef _M_IX86 template *************** template(_Pm)); } #endif /* _M_CEE */ // TEMPLATE FUNCTION mem_fn, pointer to volatile member function template ! _NAME<_Rx, _Rx(__thiscall _Arg0::*)(_ARG1_ARG2) volatile, volatile _ARG0_ARG1> ! mem_fn(_Rx(__thiscall _Arg0::*_Pm)(_ARG1_ARG2) volatile) { // bind to pointer to volatile member function ! return (_NAME<_Rx, _Rx(__thiscall _Arg0::*)(_ARG1_ARG2) volatile, volatile _ARG0_ARG1>(_Pm)); } #ifdef _M_IX86 template --- 139,158 ---- const _ARG0_ARG1>(_Pm)); } #endif /* _M_CEE */ + #endif // Disabled for gccxml // TEMPLATE FUNCTION mem_fn, pointer to volatile member function template ! _NAME<_Rx, _Rx(_Arg0::*)(_ARG1_ARG2) volatile, volatile _ARG0_ARG1> ! mem_fn(_Rx(_Arg0::*_Pm)(_ARG1_ARG2) volatile) { // bind to pointer to volatile member function ! return (_NAME<_Rx, _Rx(_Arg0::*)(_ARG1_ARG2) volatile, volatile _ARG0_ARG1>(_Pm)); } + #if 0 // Disabled for gccxml #ifdef _M_IX86 template *************** template(_Pm)); } #endif /* _M_CEE */ // TEMPLATE FUNCTION mem_fn, pointer to const volatile member function template ! _NAME<_Rx, _Rx(__thiscall _Arg0::*)(_ARG1_ARG2) const volatile, const volatile _ARG0_ARG1> ! mem_fn(_Rx(__thiscall _Arg0::*_Pm)(_ARG1_ARG2) const volatile) { // bind to pointer to const volatile member function ! return (_NAME<_Rx, _Rx(__thiscall _Arg0::*)(_ARG1_ARG2) const volatile, const volatile _ARG0_ARG1>(_Pm)); } #ifdef _M_IX86 template --- 199,218 ---- volatile _ARG0_ARG1>(_Pm)); } #endif /* _M_CEE */ + #endif // Disabled for gccxml // TEMPLATE FUNCTION mem_fn, pointer to const volatile member function template ! _NAME<_Rx, _Rx(_Arg0::*)(_ARG1_ARG2) const volatile, const volatile _ARG0_ARG1> ! mem_fn(_Rx(_Arg0::*_Pm)(_ARG1_ARG2) const volatile) { // bind to pointer to const volatile member function ! return (_NAME<_Rx, _Rx(_Arg0::*)(_ARG1_ARG2) const volatile, const volatile _ARG0_ARG1>(_Pm)); } + #if 0 // Disabled for gccxml #ifdef _M_IX86 template *************** template(_Pm)); } #endif /* _M_CEE */ + #endif // Disabled for gccxml #undef _NAME Index: xxresult =================================================================== RCS file: /cvsroot/GxInclude/Vc9sp1/Include/xxresult,v retrieving revision 1.1 retrieving revision 1.2 diff -c -3 -p -r1.1 -r1.2 *** xxresult 6 Jan 2009 21:19:25 -0000 1.1 --- xxresult 6 Jan 2009 21:37:23 -0000 1.2 *************** template ! struct _RESULT_OF<_Rx (__thiscall _Arg0::*)(_ARG1_ARG2), _Farg0& _C_FARG1_FARG2> { // pointer to member fn typedef _Rx _Type; }; #ifdef _M_IX86 template ! struct _RESULT_OF<_Rx (_Arg0::*)(_ARG1_ARG2), _Farg0& _C_FARG1_FARG2> { // pointer to member fn typedef _Rx _Type; }; + #if 0 // Disabled for gccxml #ifdef _M_IX86 template ! struct _RESULT_OF<_Rx (__thiscall _Arg0::*)(_ARG1_ARG2) const, _Farg0& _C_FARG1_FARG2> { // pointer to const member fn typedef _Rx _Type; }; #ifdef _M_IX86 template ! struct _RESULT_OF<_Rx (_Arg0::*)(_ARG1_ARG2) const, _Farg0& _C_FARG1_FARG2> { // pointer to const member fn typedef _Rx _Type; }; + #if 0 // Disabled for gccxml #ifdef _M_IX86 template ! struct _RESULT_OF<_Rx (__thiscall _Arg0::*)(_ARG1_ARG2) volatile, _Farg0& _C_FARG1_FARG2> { // pointer to volatile member fn typedef _Rx _Type; }; #ifdef _M_IX86 template ! struct _RESULT_OF<_Rx (_Arg0::*)(_ARG1_ARG2) volatile, _Farg0& _C_FARG1_FARG2> { // pointer to volatile member fn typedef _Rx _Type; }; + #if 0 // Disabled for gccxml #ifdef _M_IX86 template ! struct _RESULT_OF<_Rx (__thiscall _Arg0::*)(_ARG1_ARG2) const volatile, _Farg0& _C_FARG1_FARG2> { // pointer to const volatile member fn typedef _Rx _Type; }; #ifdef _M_IX86 template ! struct _RESULT_OF<_Rx (_Arg0::*)(_ARG1_ARG2) const volatile, _Farg0& _C_FARG1_FARG2> { // pointer to const volatile member fn typedef _Rx _Type; }; + #if 0 // Disabled for gccxml #ifdef _M_IX86 template ! struct _RESULT_OF<_Rx (__thiscall _Arg0::*const)(_ARG1_ARG2), _Farg0& _C_FARG1_FARG2> { // const pointer to member fn typedef _Rx _Type; }; #ifdef _M_IX86 template ! struct _RESULT_OF<_Rx (_Arg0::*const)(_ARG1_ARG2), _Farg0& _C_FARG1_FARG2> { // const pointer to member fn typedef _Rx _Type; }; + #if 0 // Disabled for gccxml #ifdef _M_IX86 template ! struct _RESULT_OF<_Rx (__thiscall _Arg0::*const)(_ARG1_ARG2) const, _Farg0& _C_FARG1_FARG2> { // const pointer to const member fn typedef _Rx _Type; }; #ifdef _M_IX86 template ! struct _RESULT_OF<_Rx (_Arg0::*const)(_ARG1_ARG2) const, _Farg0& _C_FARG1_FARG2> { // const pointer to const member fn typedef _Rx _Type; }; + #if 0 // Disabled for gccxml #ifdef _M_IX86 template ! struct _RESULT_OF<_Rx (__thiscall _Arg0::*const)(_ARG1_ARG2) volatile, _Farg0& _C_FARG1_FARG2> { // const pointer to volatile member fn typedef _Rx _Type; }; #ifdef _M_IX86 template ! struct _RESULT_OF<_Rx (_Arg0::*const)(_ARG1_ARG2) volatile, _Farg0& _C_FARG1_FARG2> { // const pointer to volatile member fn typedef _Rx _Type; }; + #if 0 // Disabled for gccxml #ifdef _M_IX86 template ! struct _RESULT_OF<_Rx (__thiscall _Arg0::*const)(_ARG1_ARG2) const volatile, _Farg0& _C_FARG1_FARG2> { // const pointer to const volatile member fn typedef _Rx _Type; }; #ifdef _M_IX86 template ! struct _RESULT_OF<_Rx (_Arg0::*const)(_ARG1_ARG2) const volatile, _Farg0& _C_FARG1_FARG2> { // const pointer to const volatile member fn typedef _Rx _Type; }; + #if 0 // Disabled for gccxml #ifdef _M_IX86 template" ! #define L__FUNCTION__ L"" /* _SECURE_SCL switches: default values */ *************** *** 185,190 **** --- 205,230 ---- #endif + /* ------------------------------------------------------------------------ */ + /* Forward declare these now because they are used as non-dependent names. */ + #ifdef _DEBUG + + #if !defined(_NATIVE_WCHAR_T_DEFINED) && defined(_M_CEE_PURE) + extern "C++" + #else + extern "C" + #endif + _CRTIMP void __cdecl _invalid_parameter(_In_opt_z_ const wchar_t *, _In_opt_z_ const wchar_t *, _In_opt_z_ const wchar_t *, unsigned int, uintptr_t); + + #else /* _DEBUG */ + + extern "C" + _CRTIMP void __cdecl _invalid_parameter_noinfo(void); + + #endif /* def _DEBUG */ + /* ------------------------------------------------------------------------ */ + + #if _SECURE_SCL_THROWS #define _SCL_SECURE_INVALID_ARGUMENT_NO_ASSERT _Xinvarg() *************** _STD_END *** 533,540 **** /* VC++ COMPILER PARAMETERS */ #define _LONGLONG __int64 #define _ULONGLONG unsigned __int64 ! #define _LLONG_MAX 0x7fffffffffffffff ! #define _ULLONG_MAX 0xffffffffffffffff /* INTEGER PROPERTIES */ #define _C2 1 /* 0 if not 2's complement */ --- 573,580 ---- /* VC++ COMPILER PARAMETERS */ #define _LONGLONG __int64 #define _ULONGLONG unsigned __int64 ! #define _LLONG_MAX 0x7fffffffffffffffi64 ! #define _ULLONG_MAX 0xffffffffffffffffui64 /* INTEGER PROPERTIES */ #define _C2 1 /* 0 if not 2's complement */ *************** _C_STD_END *** 826,832 **** #ifdef _MSC_VER #define _EXTERN_TEMPLATE template ! #define _THROW_BAD_ALLOC _THROW1(...) #pragma pack(pop) #endif /* _MSC_VER */ --- 866,872 ---- #ifdef _MSC_VER #define _EXTERN_TEMPLATE template ! #define _THROW_BAD_ALLOC #pragma pack(pop) #endif /* _MSC_VER */ Index: CodeAnalysis/sourceannotations.h =================================================================== RCS file: /cvsroot/GxInclude/Vc9sp1/Include/CodeAnalysis/sourceannotations.h,v retrieving revision 1.1 retrieving revision 1.2 diff -c -3 -p -r1.1 -r1.2 *** CodeAnalysis/sourceannotations.h 6 Jan 2009 21:19:11 -0000 1.1 --- CodeAnalysis/sourceannotations.h 6 Jan 2009 21:21:23 -0000 1.2 *************** typedef unsigned short wchar_t; *** 32,38 **** #ifdef __cplusplus #define SA( id ) id ! #define REPEATABLE [repeatable] #else // !__cplusplus #define SA( id ) SA_##id #define REPEATABLE --- 32,38 ---- #ifdef __cplusplus #define SA( id ) id ! #define REPEATABLE #else // !__cplusplus #define SA( id ) SA_##id #define REPEATABLE *************** typedef enum SA( AccessType ) SA( Access *** 66,72 **** #ifndef SAL_NO_ATTRIBUTE_DECLARATIONS REPEATABLE - [source_annotation_attribute( SA( Parameter ) )] struct PreAttribute { #ifdef __cplusplus --- 66,71 ---- *************** struct PreAttribute *** 97,103 **** }; REPEATABLE - [source_annotation_attribute( SA( Parameter )|SA( ReturnValue ) )] struct PostAttribute { #ifdef __cplusplus --- 96,101 ---- *************** struct PostAttribute *** 128,134 **** const wchar_t* Condition; }; - [source_annotation_attribute( SA( Parameter ) )] struct FormatStringAttribute { #ifdef __cplusplus --- 126,131 ---- *************** struct FormatStringAttribute *** 140,146 **** }; REPEATABLE - [source_annotation_attribute( SA( ReturnValue ) )] struct InvalidCheckAttribute { #ifdef __cplusplus --- 137,142 ---- *************** struct InvalidCheckAttribute *** 150,156 **** long Value; }; - [source_annotation_attribute( SA( Method ) )] struct SuccessAttribute { #ifdef __cplusplus --- 146,151 ---- *************** struct SuccessAttribute *** 161,167 **** }; REPEATABLE - [source_annotation_attribute( SA( Parameter ) )] struct PreBoundAttribute { #ifdef __cplusplus --- 156,161 ---- *************** struct PreBoundAttribute *** 171,177 **** }; REPEATABLE - [source_annotation_attribute( SA( Parameter )|SA( ReturnValue ) )] struct PostBoundAttribute { #ifdef __cplusplus --- 165,170 ---- *************** struct PostBoundAttribute *** 181,187 **** }; REPEATABLE - [source_annotation_attribute( SA( Parameter ) )] struct PreRangeAttribute { #ifdef __cplusplus --- 174,179 ---- *************** struct PreRangeAttribute *** 193,199 **** }; REPEATABLE - [source_annotation_attribute( SA( Parameter )|SA( ReturnValue ) )] struct PostRangeAttribute { #ifdef __cplusplus --- 185,190 ----