Skip to content

Conversation

stuartmorgan-g
Copy link
Collaborator

As the Visual Studio C++ compiler moves toward increasingly standards-compliant behavior, things it allows may become errors in the future (as seen in flutter/flutter#163296 and the issues it references). To avoid a whole class of future problems, this enables /permissive- for the example apps of all of our Windows plugins that have native code, and fixes the resulting violations.

Fixes flutter/flutter#163296

Pre-launch Checklist

EncodableValue(dialog.last_result()));
return FlutterError(
"System error", "Could not create dialog",
EncodableValue(std::in_place_type<int32_t>, dialog.last_result()));
Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

See the fixed issue link for the explanation for this.

@@ -90,18 +90,18 @@ ErrorOr<AllTypes> TestPlugin::EchoAllTypes(const AllTypes& everything) {
ErrorOr<std::optional<AllNullableTypes>> TestPlugin::EchoAllNullableTypes(
const AllNullableTypes* everything) {
if (!everything) {
return std::nullopt;
return std::optional<AllNullableTypes>(std::nullopt);
Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The changes in this file made me sad. I'm assuming the standard doesn't allow the two-level chaining of implicit conversions that this was relying on (foo -> optional -> ErrorOr<optional>), so this does one of them explicitly and then relies on the implicit construction of ErrorOr.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

oof

@stuartmorgan-g stuartmorgan-g added the autosubmit Merge PR when tree becomes green via auto submit App label Feb 14, 2025
@auto-submit auto-submit bot merged commit 8542af3 into flutter:main Feb 15, 2025
82 checks passed
engine-flutter-autoroll added a commit to engine-flutter-autoroll/flutter that referenced this pull request Feb 17, 2025
github-merge-queue bot pushed a commit to flutter/flutter that referenced this pull request Feb 17, 2025
flutter/packages@625023a...8542af3

2025-02-15 [email protected] [various] Enable `permissive-` for
Windows plugin examples (flutter/packages#8636)
2025-02-15 [email protected] [pigeon] Update task queue handling
(flutter/packages#8627)
2025-02-14 [email protected] Update CODEOWNERS
(flutter/packages#8628)
2025-02-14 [email protected]
[flutter_adaptive_scaffold] Fix some memory leaks
(flutter/packages#8546)
2025-02-14 [email protected] [camera] Fix crash when
setting activeFormat on FLTCaptureDevice (flutter/packages#8630)
2025-02-13 [email protected] [camera] Remove remaining
OCMock usage in tests (flutter/packages#8624)
2025-02-13 [email protected]
[webview_flutter_wkwebview] Change callback methods with a non-null
return type to non-null (flutter/packages#8564)
2025-02-12 [email protected]
[google_sign_in_ios] Adds Swift Package Manager support
(flutter/packages#7356)
2025-02-12 [email protected] [camera_avfoundation] Migrate
tests to Swift - part 1 (flutter/packages#8603)
2025-02-12 [email protected] [video_player]
Re-enables `asset videos live stream duration != 0` test for Android
(flutter/packages#8610)
2025-02-12 [email protected]
[go_router_builder] Add support for `TypedStatefulShellBranch`'s
`preload` (flutter/packages#8587)
2025-02-12 [email protected] [local_auth_darwin] Fix test name for
clarity (flutter/packages#8499)
2025-02-11 [email protected] [ci] Manually roll master, set -Xmx4G
(flutter/packages#8586)
2025-02-11 49699333+dependabot[bot]@users.noreply.github.com
[dependabot]: Bump the gradle-plugin group across 4 directories with 1
update (flutter/packages#8551)
2025-02-10 [email protected] [pigeon] Add
errors for ProxyAPI callback methods and null instances when reading in
a ProxyApiBaseCodec (flutter/packages#8567)
2025-02-10 [email protected]
[shared_preferences]Fix : SetState returning future
(flutter/packages#8398)
2025-02-10 [email protected] [various] Add deprecation notices to
READMEs (flutter/packages#8598)
2025-02-10 [email protected] [camera] Remove OCMock from
CameraSettingsTests, CameraMethodChannelTests and
CameraSessionPresetsTests (flutter/packages#8592)
2025-02-10 [email protected] [camera] Remove OCMock from
FLTCamPhotoCaptureTests, FLTSavePhotoDelegateTests and StreamingTests
(flutter/packages#8590)
2025-02-07 [email protected] [go_router]
Add `preload` parameter to `StatefulShellBranchData.$branch`
(flutter/packages#8545)
2025-02-07 [email protected] [video_player_avfoundation] iOS
platform view support (flutter/packages#8237)

If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/flutter-packages-flutter-autoroll
Please CC [email protected] on the revert to ensure that a
human
is aware of the problem.

To file a bug in Flutter:
https://github.com/flutter/flutter/issues/new/choose

To report a problem with the AutoRoller itself, please file a bug:
https://issues.skia.org/issues/new?component=1389291&template=1850622

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
@stuartmorgan-g stuartmorgan-g deleted the windows-examples-strict-standards branch February 18, 2025 18:29
androidseb pushed a commit to androidseb/packages that referenced this pull request Jun 8, 2025
)

As the Visual Studio C++ compiler moves toward increasingly standards-compliant behavior, things it allows may become errors in the future (as seen in flutter/flutter#163296 and the issues it references). To avoid a whole class of future problems, this enables `/permissive-` for the example apps of all of our Windows plugins that have native code, and fixes the resulting violations.

Fixes flutter/flutter#163296
FMorschel pushed a commit to FMorschel/packages that referenced this pull request Jun 9, 2025
)

As the Visual Studio C++ compiler moves toward increasingly standards-compliant behavior, things it allows may become errors in the future (as seen in flutter/flutter#163296 and the issues it references). To avoid a whole class of future problems, this enables `/permissive-` for the example apps of all of our Windows plugins that have native code, and fixes the resulting violations.

Fixes flutter/flutter#163296
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

[plugin:file_selector] MSVC Compilation Error with /permissive- Flag
2 participants