Replies: 3 comments 3 replies
-
I suspect there's more to this than we understand. There's Windows CE 4.0 - 6.0 which AFAICT to target those embedded systems requires Visual Studio 2008 or earlier. If that's what users are using to build libcurl for Windows CE then I think we should continue to support it. I think winbuild is the last build method to allow VS2008.
Note though VS2010 has that C99 file its compiler is not fully C99 compliant, like for example it doesn't allow mixed declarations in C files but allows them in C++ files. |
Beta Was this translation helpful? Give feedback.
-
|
I'd vote for VS 2008, maybe asking on the mailing list for objections first. Having something CI-testable as an official minimum would be good, it still supports targeting Windows 2000, and it's the oldest version we know people are using not just for the fun of using ancient versions. |
Beta Was this translation helpful? Give feedback.
-
|
Opened #15992 |
Beta Was this translation helpful? Give feedback.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
-
Would it be a good idea to define it?
If so, what would be a reasonable cutoff version?
Some considerations:
(Note that mingw-w64 is more liberal in targeting old OS versions.)
_fseeki64()). It's the last version supporting single-threaded CRT. The first version supporting x86_64.stdint.h.-DCURL_DROP_UNUSED=ON(with CMake builds) not doing much, even though the options are documented and accepted./OPT:REF(via-DCURL_DROP_UNUSED=ON) reduce binary size. Ref: 66ad54e cmake: addCURL_DROP_UNUSEDoption to reduce binary sizes #20357inttypes.h._INTEGRAL_MAX_BITS >= 64). Those are known to be available in VS2003. Maybe also in VS2002, and Visual C++ 6 (1998).C99 support details: https://learn.microsoft.com/cpp/overview/visual-cpp-language-conformance#c-standard-library-features-1
IMO:
It'd be useful to document it and align to it throughout the code and builds.
Anything older than VS2003 can be dropped without concern.
Requiring at least VS2008 would be nice. (It makes Win95 builds require MinGW, which is fine). We can test it in CI if necessary.
Requiring VS2010 would be even nicer, allowing C99. (but may disturb some Windows CE users). We do test it in CI.
VS2013 would be a plus, but may be too early.
This may also make a useful survey question.
curl code with special handling for pre-VS2010 versions:
MS compiler names/versions/years:
_MSC_VERhttps://en.wikipedia.org/wiki/Microsoft_Visual_C%2B%2B#Internal_version_numbering
https://en.wikipedia.org/wiki/Visual_Studio
Beta Was this translation helpful? Give feedback.
All reactions