Repository navigation
EDG hasn't implemented CWG-2256 "Lifetime of trivially-destructible objects" #271
StephanTLavavej
started this conversation in
Issue Triage - Compilation
Replies: 0 comments
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
Issue Summary
I'm the primary maintainer of microsoft/STL, and we've encountered a bug in EDG, which we're working around in the STL. Using VS Insiders / MSVC Build Tools Preview, the following code is correctly accepted by the MSVC Compiler 19.52.36815 and Clang 22.1.3, but incorrectly rejected by EDG 6.9. This is using MSVC's undocumented
/BEoption to invoke VS's copy of the EDG frontend used for IntelliSense.See CWG-2256 "Lifetime of trivially-destructible objects" which was "Accepted as a DR at the February, 2019 meeting."
We didn't manage to report this to EDG before it was open-sourced, because MSVC mishandled this code at that time, but MSVC has since been fixed. (For my own reference, this was also DevCom-10896316 and MSVC-internal VSO-2459167.)
Reproducing Source Code
Command-line Options
cl /EHsc /nologo /W4 /std:c++latest /c /BE /dE--version meow.cpp
Type of Issue
[Front End] This code SHOULD compile with these options.
Additional Details
Compiler output showing how MSVC and Clang accept while EDG rejects:
Reproducing (Standard) Configuration(s)
windows-msvc-release
Reproducing (Non-standard) Configuration
dump_configuration.txt
I acknowledge that:
LICENSE.txtfile in my.zipor.tar.gzupload. If I included aLICENSE.txtfile, any tests created using the reproducing source code will be governed by the terms of the license I provided instead.All reactions