This revision was automatically updated to reflect the committed changes.
Closed by commit rC329332: DR1672, DR1813, DR1881, DR2120: Implement recent
fixes to "standard (authored by rsmith, committed by ).
Changed prior to commit:
https://reviews.llvm.org/D45176?vs=140897&id=141193#toc
Reposit
rjmccall accepted this revision.
rjmccall added a comment.
This revision is now accepted and ready to land.
Okay. LGTM. Thank you for putting the effort into maintaining both rules
simultaneously.
https://reviews.llvm.org/D45176
___
cfe-commits m
rsmith updated this revision to Diff 140897.
rsmith marked an inline comment as done.
https://reviews.llvm.org/D45176
Files:
AST/ASTImporter.cpp
AST/DeclCXX.cpp
AST/RecordLayoutBuilder.cpp
CXX/drs/dr14xx.cpp
CXX/drs/dr16xx.cpp
CXX/drs/dr18xx.cpp
CXX/drs/dr21xx.cpp
CXX/drs/dr22xx.c
rsmith marked an inline comment as done.
rsmith added inline comments.
Comment at: AST/DeclCXX.cpp:1130
data().IsStandardLayout = false;
+ data().IsCXX11StandardLayout = false;
+}
rjmccall wrote:
> `IsCXX11StandardLayout` should be bas
rsmith updated this revision to Diff 140896.
https://reviews.llvm.org/D45176
Files:
AST/ASTImporter.cpp
AST/DeclCXX.cpp
AST/RecordLayoutBuilder.cpp
CXX/drs/dr14xx.cpp
CXX/drs/dr16xx.cpp
CXX/drs/dr18xx.cpp
CXX/drs/dr21xx.cpp
CXX/drs/dr22xx.cpp
Layout/watchos-standard-layout.cpp
rjmccall added inline comments.
Comment at: AST/DeclCXX.cpp:1130
data().IsStandardLayout = false;
+ data().IsCXX11StandardLayout = false;
+}
`IsCXX11StandardLayout` should be based on `FieldRec->isCXX11StandardLayout()`,
I assume.
h
rsmith updated this revision to Diff 140715.
rsmith edited the summary of this revision.
rsmith added a comment.
Patch updated to track "is C++11 standard-layout class" separately from "is
standard-layout class" so that we can use the former for record layout in the
targets that need it. This tu
rsmith created this revision.
rsmith added a reviewer: rjmccall.
Herald added subscribers: sunfish, aheejin, dschuff, sanjoy, jfb.
DR1672, DR1813, DR1881, DR2120: Implement recent fixes to "standard layout"
rules.
The new rules say that a standard-layout struct has its first non-static data
mem