mirror of
https://github.com/microsoft/vcpkg.git
synced 2024-11-28 05:49:02 +08:00
[bond] Fixed compilation error under Windows when msvc version is greater than or equal to 1915 (#38471)
`D:\b\bond\src\10.0.0-efd5420c47.clean\cpp\inc\bond\core\detail\sdl.h(29): error C4996: 'stdext::checked_array_iterator<_Ptr>': warning STL4043: stdext::checked_array_iterator, stdext::unchecked_array_iterator, and related factory functions are non-Standard extensions and will be removed in the future. std::span (since C++20) and gsl::span can be used instead. You can define _SILENCE_STDEXT_ARR_ITERS_DEPRECATION_WARNING or _SILENCE_ALL_MS_EXT_DEPRECATION_WARNINGS to suppress this warning.` The above problem occurred when I was testing an internal version of msvc, and then I consulted Stephan T. Lavavej. He proposed a repair plan and submitted PR [1205](https://github.com/microsoft/bond/pull/1205) upstream. I used stephan's repair plan to fix this problem in vcpkg. - [X] Changes comply with the [maintainer guide](https://github.com/microsoft/vcpkg-docs/blob/main/vcpkg/contributing/maintainer-guide.md). - [ ] ~~SHA512s are updated for each updated download.~~ - [ ] ~~The "supports" clause reflects platforms that may be fixed by this new version.~~ - [ ] ~~Any fixed [CI baseline](https://github.com/microsoft/vcpkg/blob/master/scripts/ci.baseline.txt) entries are removed from that file.~~ - [ ] ~~Any patches that are no longer applied are deleted from the port's directory.~~ - [X] The version database is fixed by rerunning `./vcpkg x-add-version --all` and committing the result. - [X] Only one version is added to each modified port's versions file. Compile test pass with following triplets: ``` x64-windows ```
This commit is contained in:
parent
272bf94e8f
commit
54d1a244ff
13
ports/bond/fix-msc-ver.patch
Normal file
13
ports/bond/fix-msc-ver.patch
Normal file
@ -0,0 +1,13 @@
|
||||
diff --git a/cpp/inc/bond/core/detail/sdl.h b/cpp/inc/bond/core/detail/sdl.h
|
||||
index 2a515f8..a38e6ff 100644
|
||||
--- a/cpp/inc/bond/core/detail/sdl.h
|
||||
+++ b/cpp/inc/bond/core/detail/sdl.h
|
||||
@@ -24,7 +24,7 @@
|
||||
namespace bond { namespace detail
|
||||
{
|
||||
|
||||
-#ifdef _MSC_VER
|
||||
+#if defined(_MSC_VER) && _MSC_VER < 1915
|
||||
|
||||
template<class Iterator> inline
|
||||
stdext::checked_array_iterator<Iterator> make_checked_array_iterator(
|
@ -9,6 +9,7 @@ vcpkg_from_github(
|
||||
PATCHES
|
||||
fix-install-path.patch
|
||||
skip-grpc-compilation.patch
|
||||
fix-msc-ver.patch
|
||||
)
|
||||
|
||||
if (VCPKG_TARGET_IS_WINDOWS)
|
||||
|
@ -1,7 +1,7 @@
|
||||
{
|
||||
"name": "bond",
|
||||
"version": "10.0.0",
|
||||
"port-version": 2,
|
||||
"port-version": 3,
|
||||
"description": "Bond is a cross-platform framework for working with schematized data. It supports cross-language de/serialization and powerful generic mechanisms for efficiently manipulating data. Bond is broadly used at Microsoft in high scale services.",
|
||||
"homepage": "https://github.com/Microsoft/bond",
|
||||
"dependencies": [
|
||||
|
@ -1,5 +1,10 @@
|
||||
{
|
||||
"versions": [
|
||||
{
|
||||
"git-tree": "529159c6aff85949b583f7f2a577f7a1447ed38c",
|
||||
"version": "10.0.0",
|
||||
"port-version": 3
|
||||
},
|
||||
{
|
||||
"git-tree": "800bba87d345e620b88cd1b31b34fb76ac80aee6",
|
||||
"version": "10.0.0",
|
||||
|
@ -702,7 +702,7 @@
|
||||
},
|
||||
"bond": {
|
||||
"baseline": "10.0.0",
|
||||
"port-version": 2
|
||||
"port-version": 3
|
||||
},
|
||||
"boolinq": {
|
||||
"baseline": "3.0.4",
|
||||
|
Loading…
Reference in New Issue
Block a user