VisualStudio 2017 v15.8.5 (vc141) Topic is solved
-
- Filthy Rich wx Solver
- Posts: 235
- Joined: Fri Sep 14, 2012 8:26 am
- Location: Kontich, Belgium
- Contact:
VisualStudio 2017 v15.8.5 (vc141)
Hi Guys,
I have the same error occurring when compiling a dll on VS2017 regarding wxStrcol not being defined. VS2017 is the 64bit version but I'm compiling my dll in 32bit mode. So I used the precompiled wxWidgets v3.0.4 32 bits for vs2017 (the one with 141 in the filename). Any clues on why and how to solve this ? As you can see in the screenprint there are other issues that may or may not disappear when solving this one.
with regards,
Nunki
I have the same error occurring when compiling a dll on VS2017 regarding wxStrcol not being defined. VS2017 is the 64bit version but I'm compiling my dll in 32bit mode. So I used the precompiled wxWidgets v3.0.4 32 bits for vs2017 (the one with 141 in the filename). Any clues on why and how to solve this ? As you can see in the screenprint there are other issues that may or may not disappear when solving this one.
with regards,
Nunki
Re: VisualStudio 2017 v15.8.5 (vc141)
It's possible that VS2017 is just too new for wx3.0.4. Can you try with 3.1.1?
What's the very first error message you get.
What's the very first error message you get.
Use the source, Luke!
Re: VisualStudio 2017 v15.8.5 (vc141)
As I wrote in a recent similar thread, I could build wxWidgets 3.04 with MSVC 2017.doublemax wrote:It's possible that VS2017 is just too new for wx3.0.4.
However, I used MSVC v15.8.4 and the OP is also using the prebuilt libraries buit with MSVC older than 15.8.5 but I believe neither should make a difference.
BTW, I believe that there is no 64-bit version of MSVS, despite people asking for it for years....
Edit: FWIW, I could build wxWidgets 3.04 and its xrc sample without any issues (Debug Static).
-
- Filthy Rich wx Solver
- Posts: 235
- Joined: Fri Sep 14, 2012 8:26 am
- Location: Kontich, Belgium
- Contact:
Re: VisualStudio 2017 v15.8.5 (vc141)
I do think VS2017 to be a 64bit compiler - who can also build 32bit applications. When youo open the project properties you can choose the platform (see screenshot) and x64 would be a build for a 64bit application I think.
I could of course and certainly will try 3.1.1 and see what happens, though this version is not yet considered a stable release, thus not for production environments.
However, the source where this error refers to is this:
And I must say VS2017 is much more strict on syntax. Whereas VS2010 allowed for a class member be defined in the header file with the prefix like
it now must be more like gcc already required a long time ago
Now since this piece of code refers to GCC in the comment about a forward declare, I would think this to be the possible source of the problem. Maybe for VS2017 15.8.5 the constant wxNEEDS_DECL_BEFORE_TEMPLATE needs to be declared.
with regards,
Nunki
I could of course and certainly will try 3.1.1 and see what happens, though this version is not yet considered a stable release, thus not for production environments.
However, the source where this error refers to is this:
Code: Select all
// GCC 3.4 and other compilers have a bug that causes it to fail compilation if
// the template's implementation uses overloaded function declared later (see
// the wxStrcoll() call in wxStrcoll_String<T>()), so we have to
// forward-declare the template and implement it below WX_STRCMP_FUNC. OTOH,
// this fails to compile with VC6, so don't do it for VC. It also causes
// problems with GCC visibility in newer GCC versions.
#if !(defined(__VISUALC__) || (wxCHECK_GCC_VERSION(3,5) && !wxCHECK_GCC_VERSION(4,7))) || defined(__clang__)
#define wxNEEDS_DECL_BEFORE_TEMPLATE
#endif
#ifdef wxNEEDS_DECL_BEFORE_TEMPLATE
template<typename T>
inline int wxStrcoll_String(const wxString& s1, const T& s2);
WX_STRCMP_FUNC(wxStrcoll, wxCRT_StrcollA, wxCRT_StrcollW, wxStrcoll_String)
#endif // wxNEEDS_DECL_BEFORE_TEMPLATE
template<typename T>
inline int wxStrcoll_String(const wxString& s1, const T& s2)
{
#if wxUSE_UNICODE
// NB: strcoll() doesn't work correctly on UTF-8 strings, so we have to use
// wc_str() even if wxUSE_UNICODE_UTF8; the (const wchar_t*) cast is
// there just as optimization to avoid going through
// wxStrcoll<wxScopedWCharBuffer>:
return wxStrcoll((const wchar_t*)s1.wc_str(), s2);
#else
return wxStrcoll((const char*)s1.mb_str(), s2);
#endif
}
Code: Select all
class myClass:
{
myClass::myClass(void);
myClass::~myClass(void);
void myClass::Insert(void);
};
Code: Select all
class myClass:
{
myClass(void);
~myClass(void);
void Insert(void);
};
with regards,
Nunki
Re: VisualStudio 2017 v15.8.5 (vc141)
While MSVC can indeed produce 64-bit code, it itself is still a 32-bit program, as you can see in the task manager (notice "*32" next to the process name in the process list on 64-bit Windows). 64-bit MSVS is not even in plans for the next MSVS version, see e.g. the answers of MS devs in the discussion here: https://blogs.msdn.microsoft.com/visual ... al-studio/ This of course has no relevance for the topic, just saying...Nunki wrote:I do think VS2017 to be a 64bit compiler - who can also build 32bit applications.
As I wrote in the edit of my previous post in this thread (but failed to mention the version), I could build wxWidgets and xrc sample with MSVC Express 15.8.5 (static debug 32-bit as well as DLL debug 64-bit). However I still did not try the prebuilt libraries, though the issue the op has is with an inline function so...
-
- Filthy Rich wx Solver
- Posts: 235
- Joined: Fri Sep 14, 2012 8:26 am
- Location: Kontich, Belgium
- Contact:
Re: VisualStudio 2017 v15.8.5 (vc141)
Hi,
When I add the exception of _MSC_VER_ being 1915 which is the VS2017 141 version 15.8.5, the errors regarding wxStrcol disappear. However, there are lots of other - likewise - errors. So I'm wondering if this needs to be logged with a bugreport or what.
The list of errors is
regards,
Nunki
When I add the exception of _MSC_VER_ being 1915 which is the VS2017 141 version 15.8.5, the errors regarding wxStrcol disappear. However, there are lots of other - likewise - errors. So I'm wondering if this needs to be logged with a bugreport or what.
Code: Select all
// GCC 3.4 and other compilers have a bug that causes it to fail compilation if
// the template's implementation uses overloaded function declared later (see
// the wxStrcoll() call in wxStrcoll_String<T>()), so we have to
// forward-declare the template and implement it below WX_STRCMP_FUNC. OTOH,
// this fails to compile with VC6, so don't do it for VC. It also causes
// problems with GCC visibility in newer GCC versions.
#if (!(defined(__VISUALC__) || (wxCHECK_GCC_VERSION(3,5) && !wxCHECK_GCC_VERSION(4,7))) || defined(__clang__) || (_MSC_VER == 1915))
#define wxNEEDS_DECL_BEFORE_TEMPLATE
#endif
#ifdef wxNEEDS_DECL_BEFORE_TEMPLATE
template<typename T>
inline int wxStrcoll_String(const wxString& s1, const T& s2);
WX_STRCMP_FUNC(wxStrcoll, wxCRT_StrcollA, wxCRT_StrcollW, wxStrcoll_String)
#endif // wxNEEDS_DECL_BEFORE_TEMPLATE
Code: Select all
Severity Code Description Project File Line Suppression State
Error C2079 '_DRIVER_INFO_8A::ftDriverDate' uses undefined struct '_FILETIME' (compiling source file ..\Src\XmlTools.cpp) BTK c:\program files (x86)\windows kits\10\include\10.0.17134.0\um\winspool.h 775
Error C2011 '_FILETIME': 'struct' type redefinition (compiling source file ..\Src\XmlTools.cpp) BTK c:\program files (x86)\windows kits\10\include\10.0.17134.0\shared\minwindef.h 271
Error C2011 '_SYSTEMTIME': 'struct' type redefinition (compiling source file ..\Src\XmlTools.cpp) BTK c:\program files (x86)\windows kits\10\include\10.0.17134.0\um\minwinbase.h 90
Error C2079 '_WIN32_FIND_DATAA::ftCreationTime' uses undefined struct '_FILETIME' (compiling source file ..\Src\XmlTools.cpp) BTK c:\program files (x86)\windows kits\10\include\10.0.17134.0\um\minwinbase.h 104
Error C2079 '_WIN32_FIND_DATAA::ftLastAccessTime' uses undefined struct '_FILETIME' (compiling source file ..\Src\XmlTools.cpp) BTK c:\program files (x86)\windows kits\10\include\10.0.17134.0\um\minwinbase.h 105
Error C2079 '_WIN32_FIND_DATAA::ftLastWriteTime' uses undefined struct '_FILETIME' (compiling source file ..\Src\XmlTools.cpp) BTK c:\program files (x86)\windows kits\10\include\10.0.17134.0\um\minwinbase.h 106
Error C2079 '_WIN32_FIND_DATAW::ftCreationTime' uses undefined struct '_FILETIME' (compiling source file ..\Src\XmlTools.cpp) BTK c:\program files (x86)\windows kits\10\include\10.0.17134.0\um\minwinbase.h 121
Error C2079 '_WIN32_FIND_DATAW::ftLastAccessTime' uses undefined struct '_FILETIME' (compiling source file ..\Src\XmlTools.cpp) BTK c:\program files (x86)\windows kits\10\include\10.0.17134.0\um\minwinbase.h 122
Error C2079 '_WIN32_FIND_DATAW::ftLastWriteTime' uses undefined struct '_FILETIME' (compiling source file ..\Src\XmlTools.cpp) BTK c:\program files (x86)\windows kits\10\include\10.0.17134.0\um\minwinbase.h 123
Error C2061 syntax error: identifier 'LPFILETIME' (compiling source file ..\Src\XmlTools.cpp) BTK c:\program files (x86)\windows kits\10\include\10.0.17134.0\um\fileapi.h 173
Error C2079 '_WIN32_FILE_ATTRIBUTE_DATA::ftCreationTime' uses undefined struct '_FILETIME' (compiling source file ..\Src\XmlTools.cpp) BTK c:\program files (x86)\windows kits\10\include\10.0.17134.0\um\fileapi.h 471
Error C2079 '_WIN32_FILE_ATTRIBUTE_DATA::ftLastAccessTime' uses undefined struct '_FILETIME' (compiling source file ..\Src\XmlTools.cpp) BTK c:\program files (x86)\windows kits\10\include\10.0.17134.0\um\fileapi.h 472
Error C2079 '_WIN32_FILE_ATTRIBUTE_DATA::ftLastWriteTime' uses undefined struct '_FILETIME' (compiling source file ..\Src\XmlTools.cpp) BTK c:\program files (x86)\windows kits\10\include\10.0.17134.0\um\fileapi.h 473
Error C2079 '_BY_HANDLE_FILE_INFORMATION::ftCreationTime' uses undefined struct '_FILETIME' (compiling source file ..\Src\XmlTools.cpp) BTK c:\program files (x86)\windows kits\10\include\10.0.17134.0\um\fileapi.h 530
Error C2079 '_BY_HANDLE_FILE_INFORMATION::ftLastAccessTime' uses undefined struct '_FILETIME' (compiling source file ..\Src\XmlTools.cpp) BTK c:\program files (x86)\windows kits\10\include\10.0.17134.0\um\fileapi.h 531
Error C2079 '_BY_HANDLE_FILE_INFORMATION::ftLastWriteTime' uses undefined struct '_FILETIME' (compiling source file ..\Src\XmlTools.cpp) BTK c:\program files (x86)\windows kits\10\include\10.0.17134.0\um\fileapi.h 532
Error C2061 syntax error: identifier 'LPFILETIME' (compiling source file ..\Src\XmlTools.cpp) BTK c:\program files (x86)\windows kits\10\include\10.0.17134.0\um\fileapi.h 617
Error C2061 syntax error: identifier 'LPFILETIME' (compiling source file ..\Src\XmlTools.cpp) BTK c:\program files (x86)\windows kits\10\include\10.0.17134.0\um\fileapi.h 840
Error C2061 syntax error: identifier 'LPFILETIME' (compiling source file ..\Src\XmlTools.cpp) BTK c:\program files (x86)\windows kits\10\include\10.0.17134.0\um\processthreadsapi.h 108
Error C2061 syntax error: identifier 'LPFILETIME' (compiling source file ..\Src\XmlTools.cpp) BTK c:\program files (x86)\windows kits\10\include\10.0.17134.0\um\processthreadsapi.h 822
Error C2065 'PFILETIME': undeclared identifier (compiling source file ..\Src\XmlTools.cpp) BTK c:\program files (x86)\windows kits\10\include\10.0.17134.0\um\processthreadsapi.h 970
Error C2146 syntax error: missing ')' before identifier 'lpIdleTime' (compiling source file ..\Src\XmlTools.cpp) BTK c:\program files (x86)\windows kits\10\include\10.0.17134.0\um\processthreadsapi.h 970
Error C2065 'LPSYSTEMTIME': undeclared identifier (compiling source file ..\Src\XmlTools.cpp) BTK c:\program files (x86)\windows kits\10\include\10.0.17134.0\um\sysinfoapi.h 104
Error C2146 syntax error: missing ')' before identifier 'lpSystemTime' (compiling source file ..\Src\XmlTools.cpp) BTK c:\program files (x86)\windows kits\10\include\10.0.17134.0\um\sysinfoapi.h 105
Error C2065 'LPFILETIME': undeclared identifier (compiling source file ..\Src\XmlTools.cpp) BTK c:\program files (x86)\windows kits\10\include\10.0.17134.0\um\sysinfoapi.h 112
Error C2146 syntax error: missing ')' before identifier 'lpSystemTimeAsFileTime' (compiling source file ..\Src\XmlTools.cpp) BTK c:\program files (x86)\windows kits\10\include\10.0.17134.0\um\sysinfoapi.h 113
Error C2065 'LPSYSTEMTIME': undeclared identifier (compiling source file ..\Src\XmlTools.cpp) BTK c:\program files (x86)\windows kits\10\include\10.0.17134.0\um\sysinfoapi.h 120
Error C2146 syntax error: missing ')' before identifier 'lpSystemTime' (compiling source file ..\Src\XmlTools.cpp) BTK c:\program files (x86)\windows kits\10\include\10.0.17134.0\um\sysinfoapi.h 121
Error C2061 syntax error: identifier 'PFILETIME' (compiling source file ..\Src\XmlTools.cpp) BTK c:\program files (x86)\windows kits\10\include\10.0.17134.0\um\threadpoolapiset.h 250
Error C2061 syntax error: identifier 'PFILETIME' (compiling source file ..\Src\XmlTools.cpp) BTK c:\program files (x86)\windows kits\10\include\10.0.17134.0\um\threadpoolapiset.h 298
Error C2061 syntax error: identifier 'PFILETIME' (compiling source file ..\Src\XmlTools.cpp) BTK c:\program files (x86)\windows kits\10\include\10.0.17134.0\um\threadpoolapiset.h 369
Error C2061 syntax error: identifier 'PFILETIME' (compiling source file ..\Src\XmlTools.cpp) BTK c:\program files (x86)\windows kits\10\include\10.0.17134.0\um\threadpoolapiset.h 381
Error C2061 syntax error: identifier 'LPFILETIME' (compiling source file ..\Src\XmlTools.cpp) BTK c:\program files (x86)\windows kits\10\include\10.0.17134.0\um\winbase.h 2367
Error C2079 '_TIME_ZONE_INFORMATION::StandardDate' uses undefined struct '_SYSTEMTIME' (compiling source file ..\Src\XmlTools.cpp) BTK c:\program files (x86)\windows kits\10\include\10.0.17134.0\um\timezoneapi.h 38
Error C2079 '_TIME_ZONE_INFORMATION::DaylightDate' uses undefined struct '_SYSTEMTIME' (compiling source file ..\Src\XmlTools.cpp) BTK c:\program files (x86)\windows kits\10\include\10.0.17134.0\um\timezoneapi.h 41
Error C2079 '_TIME_DYNAMIC_ZONE_INFORMATION::StandardDate' uses undefined struct '_SYSTEMTIME' (compiling source file ..\Src\XmlTools.cpp) BTK c:\program files (x86)\windows kits\10\include\10.0.17134.0\um\timezoneapi.h 48
Error C2079 '_TIME_DYNAMIC_ZONE_INFORMATION::DaylightDate' uses undefined struct '_SYSTEMTIME' (compiling source file ..\Src\XmlTools.cpp) BTK c:\program files (x86)\windows kits\10\include\10.0.17134.0\um\timezoneapi.h 51
Error C2061 syntax error: identifier 'LPSYSTEMTIME' (compiling source file ..\Src\XmlTools.cpp) BTK c:\program files (x86)\windows kits\10\include\10.0.17134.0\um\timezoneapi.h 64
Error C2061 syntax error: identifier 'LPSYSTEMTIME' (compiling source file ..\Src\XmlTools.cpp) BTK c:\program files (x86)\windows kits\10\include\10.0.17134.0\um\timezoneapi.h 75
Error C2061 syntax error: identifier 'LPSYSTEMTIME' (compiling source file ..\Src\XmlTools.cpp) BTK c:\program files (x86)\windows kits\10\include\10.0.17134.0\um\timezoneapi.h 85
Error C2061 syntax error: identifier 'LPFILETIME' (compiling source file ..\Src\XmlTools.cpp) BTK c:\program files (x86)\windows kits\10\include\10.0.17134.0\um\timezoneapi.h 95
Error C2061 syntax error: identifier 'PFILETIME' (compiling source file ..\Src\XmlTools.cpp) BTK c:\program files (x86)\windows kits\10\include\10.0.17134.0\um\winreg.h 555
Error C2061 syntax error: identifier 'PFILETIME' (compiling source file ..\Src\XmlTools.cpp) BTK c:\program files (x86)\windows kits\10\include\10.0.17134.0\um\winreg.h 569
Error C2061 syntax error: identifier 'PFILETIME' (compiling source file ..\Src\XmlTools.cpp) BTK c:\program files (x86)\windows kits\10\include\10.0.17134.0\um\winreg.h 762
Error C2061 syntax error: identifier 'PFILETIME' (compiling source file ..\Src\XmlTools.cpp) BTK c:\program files (x86)\windows kits\10\include\10.0.17134.0\um\winreg.h 780
Error C2079 'tagRPC_EXTENDED_ERROR_INFO::SystemTime' uses undefined struct '_SYSTEMTIME' (compiling source file ..\Src\XmlTools.cpp) BTK c:\program files (x86)\windows kits\10\include\10.0.17134.0\shared\rpcasync.h 290
Error C2079 'tagRPC_EXTENDED_ERROR_INFO::FileTime' uses undefined struct '_FILETIME' (compiling source file ..\Src\XmlTools.cpp) BTK c:\program files (x86)\windows kits\10\include\10.0.17134.0\shared\rpcasync.h 291
Error C2079 '_PERF_DATA_BLOCK::SystemTime' uses undefined struct '_SYSTEMTIME' (compiling source file ..\Src\XmlTools.cpp) BTK c:\program files (x86)\windows kits\10\include\10.0.17134.0\um\winperf.h 84
Error C2079 '_CERT_INFO::NotBefore' uses undefined struct '_FILETIME' (compiling source file ..\Src\XmlTools.cpp) BTK c:\program files (x86)\windows kits\10\include\10.0.17134.0\um\wincrypt.h 2325
Error C2079 '_CERT_INFO::NotAfter' uses undefined struct '_FILETIME' (compiling source file ..\Src\XmlTools.cpp) BTK c:\program files (x86)\windows kits\10\include\10.0.17134.0\um\wincrypt.h 2326
Error C2079 '_CRL_ENTRY::RevocationDate' uses undefined struct '_FILETIME' (compiling source file ..\Src\XmlTools.cpp) BTK c:\program files (x86)\windows kits\10\include\10.0.17134.0\um\wincrypt.h 2365
Error C2079 '_CRL_INFO::ThisUpdate' uses undefined struct '_FILETIME' (compiling source file ..\Src\XmlTools.cpp) BTK c:\program files (x86)\windows kits\10\include\10.0.17134.0\um\wincrypt.h 2380
Error C2079 '_CRL_INFO::NextUpdate' uses undefined struct '_FILETIME' (compiling source file ..\Src\XmlTools.cpp) BTK c:\program files (x86)\windows kits\10\include\10.0.17134.0\um\wincrypt.h 2381
Error C2079 '_CTL_INFO::ThisUpdate' uses undefined struct '_FILETIME' (compiling source file ..\Src\XmlTools.cpp) BTK c:\program files (x86)\windows kits\10\include\10.0.17134.0\um\wincrypt.h 2491
Error C2079 '_CTL_INFO::NextUpdate' uses undefined struct '_FILETIME' (compiling source file ..\Src\XmlTools.cpp) BTK c:\program files (x86)\windows kits\10\include\10.0.17134.0\um\wincrypt.h 2492
Error C2079 '_CERT_PRIVATE_KEY_VALIDITY::NotBefore' uses undefined struct '_FILETIME' (compiling source file ..\Src\XmlTools.cpp) BTK c:\program files (x86)\windows kits\10\include\10.0.17134.0\um\wincrypt.h 3892
Error C2079 '_CERT_PRIVATE_KEY_VALIDITY::NotAfter' uses undefined struct '_FILETIME' (compiling source file ..\Src\XmlTools.cpp) BTK c:\program files (x86)\windows kits\10\include\10.0.17134.0\um\wincrypt.h 3893
Error C2079 '_CMC_PEND_INFO::PendTime' uses undefined struct '_FILETIME' (compiling source file ..\Src\XmlTools.cpp) BTK c:\program files (x86)\windows kits\10\include\10.0.17134.0\um\wincrypt.h 5281
Error C2079 '_OCSP_BASIC_REVOKED_INFO::RevocationDate' uses undefined struct '_FILETIME' (compiling source file ..\Src\XmlTools.cpp) BTK c:\program files (x86)\windows kits\10\include\10.0.17134.0\um\wincrypt.h 5670
Error C2079 '_OCSP_BASIC_RESPONSE_ENTRY::ThisUpdate' uses undefined struct '_FILETIME' (compiling source file ..\Src\XmlTools.cpp) BTK c:\program files (x86)\windows kits\10\include\10.0.17134.0\um\wincrypt.h 5688
Error C2079 '_OCSP_BASIC_RESPONSE_ENTRY::NextUpdate' uses undefined struct '_FILETIME' (compiling source file ..\Src\XmlTools.cpp) BTK c:\program files (x86)\windows kits\10\include\10.0.17134.0\um\wincrypt.h 5689
Error C2079 '_OCSP_BASIC_RESPONSE_INFO::ProducedAt' uses undefined struct '_FILETIME' (compiling source file ..\Src\XmlTools.cpp) BTK c:\program files (x86)\windows kits\10\include\10.0.17134.0\um\wincrypt.h 5709
Error C2079 '_CMSG_RECIPIENT_ENCRYPTED_KEY_ENCODE_INFO::Date' uses undefined struct '_FILETIME' (compiling source file ..\Src\XmlTools.cpp) BTK c:\program files (x86)\windows kits\10\include\10.0.17134.0\um\wincrypt.h 6921
Error C2079 '_CMSG_MAIL_LIST_RECIPIENT_ENCODE_INFO::Date' uses undefined struct '_FILETIME' (compiling source file ..\Src\XmlTools.cpp) BTK c:\program files (x86)\windows kits\10\include\10.0.17134.0\um\wincrypt.h 6997
Error C2079 '_CMSG_RECIPIENT_ENCRYPTED_KEY_INFO::Date' uses undefined struct '_FILETIME' (compiling source file ..\Src\XmlTools.cpp) BTK c:\program files (x86)\windows kits\10\include\10.0.17134.0\um\wincrypt.h 7789
Error C2079 '_CMSG_MAIL_LIST_RECIPIENT_INFO::Date' uses undefined struct '_FILETIME' (compiling source file ..\Src\XmlTools.cpp) BTK c:\program files (x86)\windows kits\10\include\10.0.17134.0\um\wincrypt.h 7820
Error C3646 'pftTimeToUse': unknown override specifier (compiling source file ..\Src\XmlTools.cpp) BTK c:\program files (x86)\windows kits\10\include\10.0.17134.0\um\wincrypt.h 13827
Error C4430 missing type specifier - int assumed. Note: C++ does not support default-int (compiling source file ..\Src\XmlTools.cpp) BTK c:\program files (x86)\windows kits\10\include\10.0.17134.0\um\wincrypt.h 13827
Error C2065 'LPFILETIME': undeclared identifier (compiling source file ..\Src\XmlTools.cpp) BTK c:\program files (x86)\windows kits\10\include\10.0.17134.0\um\wincrypt.h 14575
Error C2146 syntax error: missing ')' before identifier 'pTimeToVerify' (compiling source file ..\Src\XmlTools.cpp) BTK c:\program files (x86)\windows kits\10\include\10.0.17134.0\um\wincrypt.h 14575
Error C2065 'LPFILETIME': undeclared identifier (compiling source file ..\Src\XmlTools.cpp) BTK c:\program files (x86)\windows kits\10\include\10.0.17134.0\um\wincrypt.h 14597
Error C2146 syntax error: missing ')' before identifier 'pTimeToVerify' (compiling source file ..\Src\XmlTools.cpp) BTK c:\program files (x86)\windows kits\10\include\10.0.17134.0\um\wincrypt.h 14597
Error C2079 '_CRYPTNET_URL_CACHE_PRE_FETCH_INFO::ThisUpdateTime' uses undefined struct '_FILETIME' (compiling source file ..\Src\XmlTools.cpp) BTK c:\program files (x86)\windows kits\10\include\10.0.17134.0\um\wincrypt.h 17354
Error C2079 '_CRYPTNET_URL_CACHE_PRE_FETCH_INFO::NextUpdateTime' uses undefined struct '_FILETIME' (compiling source file ..\Src\XmlTools.cpp) BTK c:\program files (x86)\windows kits\10\include\10.0.17134.0\um\wincrypt.h 17355
Error C2079 '_CRYPTNET_URL_CACHE_PRE_FETCH_INFO::PublishTime' uses undefined struct '_FILETIME' (compiling source file ..\Src\XmlTools.cpp) BTK c:\program files (x86)\windows kits\10\include\10.0.17134.0\um\wincrypt.h 17356
Error C2079 '_CRYPTNET_URL_CACHE_FLUSH_INFO::ExpireTime' uses undefined struct '_FILETIME' (compiling source file ..\Src\XmlTools.cpp) BTK c:\program files (x86)\windows kits\10\include\10.0.17134.0\um\wincrypt.h 17382
Error C2079 '_CRYPTNET_URL_CACHE_RESPONSE_INFO::LastModifiedTime' uses undefined struct '_FILETIME' (compiling source file ..\Src\XmlTools.cpp) BTK c:\program files (x86)\windows kits\10\include\10.0.17134.0\um\wincrypt.h 17398
Error C3646 'pftCacheResync': unknown override specifier (compiling source file ..\Src\XmlTools.cpp) BTK c:\program files (x86)\windows kits\10\include\10.0.17134.0\um\wincrypt.h 17452
Error C4430 missing type specifier - int assumed. Note: C++ does not support default-int (compiling source file ..\Src\XmlTools.cpp) BTK c:\program files (x86)\windows kits\10\include\10.0.17134.0\um\wincrypt.h 17452
Error C3646 'pftCacheResync': unknown override specifier (compiling source file ..\Src\XmlTools.cpp) BTK c:\program files (x86)\windows kits\10\include\10.0.17134.0\um\wincrypt.h 17818
Error C4430 missing type specifier - int assumed. Note: C++ does not support default-int (compiling source file ..\Src\XmlTools.cpp) BTK c:\program files (x86)\windows kits\10\include\10.0.17134.0\um\wincrypt.h 17818
Error C3646 'pLastSyncTime': unknown override specifier (compiling source file ..\Src\XmlTools.cpp) BTK c:\program files (x86)\windows kits\10\include\10.0.17134.0\um\wincrypt.h 17821
Error C4430 missing type specifier - int assumed. Note: C++ does not support default-int (compiling source file ..\Src\XmlTools.cpp) BTK c:\program files (x86)\windows kits\10\include\10.0.17134.0\um\wincrypt.h 17821
Error C3646 'pMaxAgeTime': unknown override specifier (compiling source file ..\Src\XmlTools.cpp) BTK c:\program files (x86)\windows kits\10\include\10.0.17134.0\um\wincrypt.h 17826
Error C4430 missing type specifier - int assumed. Note: C++ does not support default-int (compiling source file ..\Src\XmlTools.cpp) BTK c:\program files (x86)\windows kits\10\include\10.0.17134.0\um\wincrypt.h 17826
Error C2061 syntax error: identifier 'LPFILETIME' (compiling source file ..\Src\XmlTools.cpp) BTK c:\program files (x86)\windows kits\10\include\10.0.17134.0\um\wincrypt.h 17847
Error C2061 syntax error: identifier 'PSYSTEMTIME' (compiling source file ..\Src\XmlTools.cpp) BTK c:\program files (x86)\windows kits\10\include\10.0.17134.0\um\wincrypt.h 17992
Error C2061 syntax error: identifier 'LPFILETIME' (compiling source file ..\Src\XmlTools.cpp) BTK c:\program files (x86)\windows kits\10\include\10.0.17134.0\um\wincrypt.h 19719
Error C3646 'pftCurrentTime': unknown override specifier (compiling source file ..\Src\XmlTools.cpp) BTK c:\program files (x86)\windows kits\10\include\10.0.17134.0\um\wincrypt.h 19761
Error C4430 missing type specifier - int assumed. Note: C++ does not support default-int (compiling source file ..\Src\XmlTools.cpp) BTK c:\program files (x86)\windows kits\10\include\10.0.17134.0\um\wincrypt.h 19761
Error C3646 'pftCacheResync': unknown override specifier (compiling source file ..\Src\XmlTools.cpp) BTK c:\program files (x86)\windows kits\10\include\10.0.17134.0\um\wincrypt.h 19762
Error C4430 missing type specifier - int assumed. Note: C++ does not support default-int (compiling source file ..\Src\XmlTools.cpp) BTK c:\program files (x86)\windows kits\10\include\10.0.17134.0\um\wincrypt.h 19762
Error C2079 '_JOB_INFO_1A::Submitted' uses undefined struct '_SYSTEMTIME' (compiling source file ..\Src\XmlTools.cpp) BTK c:\program files (x86)\windows kits\10\include\10.0.17134.0\um\winspool.h 345
Error C2079 '_JOB_INFO_1W::Submitted' uses undefined struct '_SYSTEMTIME' (compiling source file ..\Src\XmlTools.cpp) BTK c:\program files (x86)\windows kits\10\include\10.0.17134.0\um\winspool.h 360
Error C2079 '_JOB_INFO_2A::Submitted' uses undefined struct '_SYSTEMTIME' (compiling source file ..\Src\XmlTools.cpp) BTK c:\program files (x86)\windows kits\10\include\10.0.17134.0\um\winspool.h 393
Error C2079 '_JOB_INFO_2W::Submitted' uses undefined struct '_SYSTEMTIME' (compiling source file ..\Src\XmlTools.cpp) BTK c:\program files (x86)\windows kits\10\include\10.0.17134.0\um\winspool.h 418
Error C2079 '_JOB_INFO_4A::Submitted' uses undefined struct '_SYSTEMTIME' (compiling source file ..\Src\XmlTools.cpp) BTK c:\program files (x86)\windows kits\10\include\10.0.17134.0\um\winspool.h 459
Error C2079 '_JOB_INFO_4W::Submitted' uses undefined struct '_SYSTEMTIME' (compiling source file ..\Src\XmlTools.cpp) BTK c:\program files (x86)\windows kits\10\include\10.0.17134.0\um\winspool.h 485
Error C2079 '_DRIVER_INFO_6A::ftDriverDate' uses undefined struct '_FILETIME' (compiling source file ..\Src\XmlTools.cpp) BTK c:\program files (x86)\windows kits\10\include\10.0.17134.0\um\winspool.h 712
Error C2079 '_DRIVER_INFO_6W::ftDriverDate' uses undefined struct '_FILETIME' (compiling source file ..\Src\XmlTools.cpp) BTK c:\program files (x86)\windows kits\10\include\10.0.17134.0\um\winspool.h 731
Error C2079 '_DRIVER_INFO_8A::ftMinInboxDriverVerDate' uses undefined struct '_FILETIME' (compiling source file ..\Src\XmlTools.cpp) BTK c:\program files (x86)\windows kits\10\include\10.0.17134.0\um\winspool.h 787
Error C2079 '_DRIVER_INFO_8W::ftDriverDate' uses undefined struct '_FILETIME' (compiling source file ..\Src\XmlTools.cpp) BTK c:\program files (x86)\windows kits\10\include\10.0.17134.0\um\winspool.h 802
Error C2079 '_DRIVER_INFO_8W::ftMinInboxDriverVerDate' uses undefined struct '_FILETIME' (compiling source file ..\Src\XmlTools.cpp) BTK c:\program files (x86)\windows kits\10\include\10.0.17134.0\um\winspool.h 814
Error C2079 '_CORE_PRINTER_DRIVERA::ftDriverDate' uses undefined struct '_FILETIME' (compiling source file ..\Src\XmlTools.cpp) BTK c:\program files (x86)\windows kits\10\include\10.0.17134.0\um\winspool.h 3558
Error C2079 '_CORE_PRINTER_DRIVERW::ftDriverDate' uses undefined struct '_FILETIME' (compiling source file ..\Src\XmlTools.cpp) BTK c:\program files (x86)\windows kits\10\include\10.0.17134.0\um\winspool.h 3565
Error C2079 'tagSTATSTG::mtime' uses undefined struct '_FILETIME' (compiling source file ..\Src\XmlTools.cpp) BTK c:\program files (x86)\windows kits\10\include\10.0.17134.0\um\objidlbase.h 2218
Error C2079 'tagSTATSTG::ctime' uses undefined struct '_FILETIME' (compiling source file ..\Src\XmlTools.cpp) BTK c:\program files (x86)\windows kits\10\include\10.0.17134.0\um\objidlbase.h 2219
Error C2079 'tagSTATSTG::atime' uses undefined struct '_FILETIME' (compiling source file ..\Src\XmlTools.cpp) BTK c:\program files (x86)\windows kits\10\include\10.0.17134.0\um\objidlbase.h 2220
Error C1003 error count exceeds 100; stopping compilation (compiling source file ..\Src\XmlTools.cpp) BTK c:\program files (x86)\windows kits\10\include\10.0.17134.0\um\objidlbase.h 2220
Error C4703 potentially uninitialized local pointer variable 'hCtrl' used BTK k:\dbs1.9\btk\src\wndtools.cpp 65
Error C4703 potentially uninitialized local pointer variable 'hCtrl' used BTK k:\dbs1.9\btk\src\wndtools.cpp 120
regards,
Nunki
Re: VisualStudio 2017 v15.8.5 (vc141)
Can you reproduce the issue with any of the bundled samples (using vc9 converted projects) or is it just with your own project file?
If it were wxWidgets issue, how come it works for me? Did it really stopped working just because you upgraded to 15.8.5? Does the issue manifest when you use wxWidgets libraries you built by yourself?
If it were wxWidgets issue, how come it works for me? Did it really stopped working just because you upgraded to 15.8.5? Does the issue manifest when you use wxWidgets libraries you built by yourself?
-
- Filthy Rich wx Solver
- Posts: 235
- Joined: Fri Sep 14, 2012 8:26 am
- Location: Kontich, Belgium
- Contact:
Re: VisualStudio 2017 v15.8.5 (vc141)
Hi PB,
I haven't tried any project apart from the one I was trying now.
It could be IMHO that indeed MS augmented the level of complying to the standards. Since the comments in the wxWidgets code clearly stated, the developers themselves have already been confronted with the fact that gcc is more strict than VS. So yes it could be just that difference between my version and yours. Or it could also be a compiler option that I do not know yet, that treats these items as errors. But that should mean also that in your version/setup these errors were treated as warnings, at least.
Up till now I only used the binary prebuilt versions of wxWidgets.
with regards,
Nunki
I haven't tried any project apart from the one I was trying now.
It could be IMHO that indeed MS augmented the level of complying to the standards. Since the comments in the wxWidgets code clearly stated, the developers themselves have already been confronted with the fact that gcc is more strict than VS. So yes it could be just that difference between my version and yours. Or it could also be a compiler option that I do not know yet, that treats these items as errors. But that should mean also that in your version/setup these errors were treated as warnings, at least.
Up till now I only used the binary prebuilt versions of wxWidgets.
with regards,
Nunki
Re: VisualStudio 2017 v15.8.5 (vc141)
I tried with wxWidgets 3.0.4 with unmodified setup.h and the same version of MSVC you have - 15.8.5.Nunki wrote:So yes it could be just that difference between my version and yours. Or it could also be a compiler option that I do not know yet, that treats these items as errors. But that should mean also that in your version/setup these errors were treated as warnings, at least.
What I meant to say was that you should try to reproduce the error with wxWidgets sample before you submit this as a bug, to make sure the issue is not within your project.
The errors about standard Windows types such _SYSTEMTIME or _FILETIME being undefined look odd, as if there were a windows header files issue.
Re: VisualStudio 2017 v15.8.5 (vc141)
Hi,
The only difference between stable and development releases are API/ABI compatibility.
It means that between 3.0.0 and 3.0.4 (all stable releases) there is a guarantee that both those aforementioned compatibilities won't be broken.
And between 3.1.0 and 3.1.1, the API compatibility can be broken. And it will make a transition to 3.2.0 (next stable release) easier, because the API will be stable by that time and you will eliminate all those hassles with the upgrade.
But both 3.0.4 and 3.1.1 can be used for production in all 3 major platforms. Remember you can create a dependency in *nix builds for any version you want when you start packaging the software.
Thank you.
Why do you say this?I could of course and certainly will try 3.1.1 and see what happens, though this version is not yet considered a stable release, thus not for production environments.
The only difference between stable and development releases are API/ABI compatibility.
It means that between 3.0.0 and 3.0.4 (all stable releases) there is a guarantee that both those aforementioned compatibilities won't be broken.
And between 3.1.0 and 3.1.1, the API compatibility can be broken. And it will make a transition to 3.2.0 (next stable release) easier, because the API will be stable by that time and you will eliminate all those hassles with the upgrade.
But both 3.0.4 and 3.1.1 can be used for production in all 3 major platforms. Remember you can create a dependency in *nix builds for any version you want when you start packaging the software.
Thank you.
-
- Filthy Rich wx Solver
- Posts: 235
- Joined: Fri Sep 14, 2012 8:26 am
- Location: Kontich, Belgium
- Contact:
Re: VisualStudio 2017 v15.8.5 (vc141)
Hi Guys,
Problem solved. Turned out wxWidgets was not the base of this problem. VS2017 for some reason resulted these error because of the sequence of the include files. Once I rearranged the sequence it compiled without any errors or warnings.
Thanks to all who stepped in to help me.
regards,
Nunki
Problem solved. Turned out wxWidgets was not the base of this problem. VS2017 for some reason resulted these error because of the sequence of the include files. Once I rearranged the sequence it compiled without any errors or warnings.
Thanks to all who stepped in to help me.
regards,
Nunki
-
- In need of some credit
- Posts: 1
- Joined: Tue Mar 12, 2019 6:38 am
Re: VisualStudio 2017 v15.8.5 (vc141)
Can you specify which include files you rearranged? I seem to have the same problem with an even newer version of Visual Studio (15.9.. Thanks.
-
- Filthy Rich wx Solver
- Posts: 235
- Joined: Fri Sep 14, 2012 8:26 am
- Location: Kontich, Belgium
- Contact:
Re: VisualStudio 2017 v15.8.5 (vc141)
@ryanlee
Apart from wxWidgets I also use the Chilkat library. Turned out one of their headers had to be one of the first included to fix this problem. Later on the guy at Chilkat argued that adding the windows.h header would also have done the trick.
Hope this helps you in some way,
regards,
Nunki
Apart from wxWidgets I also use the Chilkat library. Turned out one of their headers had to be one of the first included to fix this problem. Later on the guy at Chilkat argued that adding the windows.h header would also have done the trick.
Hope this helps you in some way,
regards,
Nunki