Skip to content

Conversation

@ffa-csturdy
Copy link
Contributor

On Windows, the _ITERATOR_DEBUG_LEVEL flag is not set for Debug builds. This causes mismatch errors when attempting to build consuming codebases where this flag is set.

I have personally run in to this issue when attempting to build Qt 5.15.2.

My change appends _ITERATOR_DEBUG_LEVEL=2 and _DEBUG to the CMAKE_CXX_FLAGS_DEBUG variable, allowing the values to appear in the preprocessor list in the generated .vcxproj file (debug only). The flags have also been manually added to the existing .vcxproj file, in the msvc/ directory.

@google-cla
Copy link

google-cla bot commented Jul 11, 2023

Thanks for your pull request! It looks like this may be your first contribution to a Google open source project. Before we can look at your pull request, you'll need to sign a Contributor License Agreement (CLA).

View this failed invocation of the CLA check for more information.

For the most up to date status, view the checks section at the bottom of the pull request.

@floitsch
Copy link
Collaborator

LGTM.
Thanks!

@floitsch floitsch merged commit dfa08c4 into google:master Jul 11, 2023
floitsch pushed a commit that referenced this pull request Oct 4, 2025
This reverts commit dfa08c4.

The original change is invalid. `_ITERATOR_DEBUG_LEVEL=2` is the default
value in debug builds. And now it's impossible to override it because
it's *appended* to `CMAKE_CXX_FLAGS_DEBUG`.
I suspect that the original problem was that release double-conversion
library was used in debug builds of Qt. This is not something that
should be fixed in double-conversion.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants