Skip to content

Conversation

@miniksa
Copy link
Member

@miniksa miniksa commented Aug 17, 2020

New warnings were added in VS 16.7 and std::map::erase is now noexcept.
Update our code to be compatible with the new enforcement.

PR Checklist

  • Closes broken audit in main after Agents updated over the weekend.
  • I work here.
  • Audit mode passes now
  • Am core contributor.

Validation Steps Performed

  • Ran audit mode locally

@miniksa miniksa added Product-Conhost For issues in the Console codebase Issue-Bug It either shouldn't be doing this or needs an investigation. Area-Build Issues pertaining to the build system, CI, infrastructure, meta Product-Terminal The new Windows Terminal. labels Aug 17, 2020
@skyline75489
Copy link
Collaborator

Wait a minute they are allowed to do that? I thought noexcept was only a nightmare in users’ code. Isn’t there some kind of regulation to prevent the signatures of std functions from changing?

@DHowett
Copy link
Member

DHowett commented Aug 18, 2020

I believe that removing noexcept is considered a breaking change, but adding it may not be?

@DHowett
Copy link
Member

DHowett commented Aug 18, 2020

@msftbot merge this in like 5 minutes

@ghost ghost added the AutoMerge Marked for automatic merge by the bot when requirements are met label Aug 18, 2020
@ghost
Copy link

ghost commented Aug 18, 2020

Hello @DHowett!

Because you've given me some instructions on how to help merge this pull request, I'll be modifying my merge approach. Here's how I understand your requirements for merging this pull request:

  • I won't merge this pull request until after the UTC date Tue, 18 Aug 2020 00:14:10 GMT, which is in 5 minutes

If this doesn't seem right to you, you can tell me to cancel these instructions and use the auto-merge policy that has been configured for this repository. Try telling me "forget everything I just told you".

@miniksa
Copy link
Member Author

miniksa commented Aug 18, 2020

I swear I'm not crazy. On my machine (with 16.7.1) it says that erase is noexcept despite the CI failing the static analysis build saying it is not:

image

@miniksa
Copy link
Member Author

miniksa commented Aug 18, 2020

My machine is using this path for STL: C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\VC\Tools\MSVC\14.27.29110\include
The build machine is using this path for STL:
C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\VC\Tools\MSVC\14.26.28801\include

Which would mean the build machine is on Visual Studio 16.6.5.

@miniksa
Copy link
Member Author

miniksa commented Aug 18, 2020

I'll yank the noexcept from erase until the build machines rev to 16.7. But I have no idea why them going to (apparently) 16.6.5 this weekend broke all the other stuff.

Basically what I'm saying is... GUH.

@ghost ghost merged commit a50c48c into master Aug 18, 2020
@ghost ghost deleted the dev/miniksa/vs167_audit_changes branch August 18, 2020 16:59
DHowett pushed a commit that referenced this pull request Aug 20, 2020
New warnings were added in VS 16.7 and `std::map::erase` is now `noexcept`.
Update our code to be compatible with the new enforcement.

## PR Checklist
* [x] Closes broken audit in main after Agents updated over the weekend.
* [x] I work here.
* [x] Audit mode passes now
* [x] Am core contributor.

## Validation Steps Performed
* [x] Ran audit mode locally

(cherry picked from commit a50c48c)
ghost pushed a commit that referenced this pull request Aug 24, 2020
This is just the `noexcept` part of #7319, because the CI apparently got updated overnight.
DHowett added a commit that referenced this pull request Sep 3, 2020
Dustin L. Howett
* Clear the last error before calling Mb2Wc in ConvertToW (GH-7391)
* Update clang-format to 10.0 (GH-7389)
* Add til::static_map, a constexpr key-value store (GH-7323)

James Holderness
* Refactor VT control sequence identification (CC-7304)

Mike Griese
* Compensate for VS 16.7, part 2 (GH-7383)
* Add support for iterable, nested commands (GH-6856)

Michael Niksa
* Helix Testing (GH-6992)
* Compensate for new warnings and STL changes in VS 16.7 (GH-7319)

nathpete-msft
* Fix environment block creation (GH-7401)

Chester Liu
* Add initial support for VT DCS sequences (CC-6328)

Related work items: #28791050
This pull request was closed.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Area-Build Issues pertaining to the build system, CI, infrastructure, meta AutoMerge Marked for automatic merge by the bot when requirements are met Issue-Bug It either shouldn't be doing this or needs an investigation. Product-Conhost For issues in the Console codebase Product-Terminal The new Windows Terminal.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants