[PATCH] D158532: Anonymous unions should be transparent wrt `[[clang::trivial_abi]]`.

2023-09-13 Thread Łukasz Anforowicz via Phabricator via cfe-commits
lukasza added a comment. @gribozavr2 - ping? Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D158532/new/ https://reviews.llvm.org/D158532 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lis

[PATCH] D158532: Anonymous unions should be transparent wrt `[[clang::trivial_abi]]`.

2023-08-22 Thread Łukasz Anforowicz via Phabricator via cfe-commits
lukasza added a comment. The delta from https://reviews.llvm.org/D155895 is in `clang/test/SemaCXX/attr-trivial-abi.cpp` where 1) a comment has been added above the non-trivial move constructor of the `Trivial` test helper and 2) test expectations have been tweaked to account for `_WIN64` and `

[PATCH] D158532: Anonymous unions should be transparent wrt `[[clang::trivial_abi]]`.

2023-08-22 Thread Łukasz Anforowicz via Phabricator via cfe-commits
lukasza created this revision. lukasza added a reviewer: gribozavr2. lukasza added a project: clang. Herald added a subscriber: mstorsjo. Herald added a project: All. lukasza requested review of this revision. Herald added a subscriber: cfe-commits. This is a reland of https://reviews.llvm.org/D15

[PATCH] D155895: Anonymous unions should be transparent wrt `[[clang::trivial_abi]]`.

2023-08-07 Thread Łukasz Anforowicz via Phabricator via cfe-commits
lukasza added a comment. In D155895#4566903 , @thakis wrote: > Looks like this breaks tests on windows: > http://45.33.8.238/win/82239/step_7.txt Thanks for the report! It seems that `#if defined(_WIN64) && !defined(__MINGW32__)` from `clang/test/Sema

[PATCH] D155895: Anonymous unions should be transparent wrt `[[clang::trivial_abi]]`.

2023-08-07 Thread Łukasz Anforowicz via Phabricator via cfe-commits
lukasza updated this revision to Diff 547862. lukasza added a comment. More granular usage of `#if defined(CLANG_ABI_COMPAT) && ...` in tests CHANGES SINCE LAST ACTION https://reviews.llvm.org/D155895/new/ https://reviews.llvm.org/D155895 Files: clang/include/clang/Basic/LangOptions.h cl

[PATCH] D155895: Anonymous unions should be transparent wrt `[[clang::trivial_abi]]`.

2023-07-26 Thread Łukasz Anforowicz via Phabricator via cfe-commits
lukasza updated this revision to Diff 544478. lukasza added a comment. Rebasing... CHANGES SINCE LAST ACTION https://reviews.llvm.org/D155895/new/ https://reviews.llvm.org/D155895 Files: clang/include/clang/Basic/LangOptions.h clang/lib/Frontend/CompilerInvocation.cpp clang/lib/Sema/Se

[PATCH] D155895: Anonymous unions should be transparent wrt `[[clang::trivial_abi]]`.

2023-07-26 Thread Łukasz Anforowicz via Phabricator via cfe-commits
lukasza updated this revision to Diff 544476. lukasza added a comment. Added support for `-fclang-abi-compat=17` CHANGES SINCE LAST ACTION https://reviews.llvm.org/D155895/new/ https://reviews.llvm.org/D155895 Files: clang/include/clang/Basic/LangOptions.h clang/lib/Frontend/CompilerInvo

[PATCH] D155895: Anonymous unions should be transparent wrt `[[clang::trivial_abi]]`.

2023-07-24 Thread Łukasz Anforowicz via Phabricator via cfe-commits
lukasza added a comment. In D155895#4525417 , @gribozavr2 wrote: > @lukasza I think you forgot to upload an updated version of the patch. Ooops, sorry about that. I've been trying to use `arc`, but it seems that it has uploaded separate reviews at htt

[PATCH] D155895: Anonymous unions should be transparent wrt `[[clang::trivial_abi]]`.

2023-07-24 Thread Łukasz Anforowicz via Phabricator via cfe-commits
lukasza updated this revision to Diff 543594. lukasza marked an inline comment as done. lukasza added a comment. Addressed feedback from @gribozavr2 CHANGES SINCE LAST ACTION https://reviews.llvm.org/D155895/new/ https://reviews.llvm.org/D155895 Files: clang/lib/Sema/SemaDeclCXX.cpp clan

[PATCH] D156004: s/ #include / #include "llvm/ADT/SmallVector.h" /

2023-07-21 Thread Łukasz Anforowicz via Phabricator via cfe-commits
lukasza added a comment. https://llvm.org/docs/MyFirstTypoFix.html#updating-your-change told me to run `arc diff`... not sure if I should abandon the original revision and reupload a cleaned-up fix instead? Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm

[PATCH] D156004: s/ #include / #include "llvm/ADT/SmallVector.h" /

2023-07-21 Thread Łukasz Anforowicz via Phabricator via cfe-commits
lukasza created this revision. Herald added a project: All. lukasza requested review of this revision. Herald added a project: clang. Herald added a subscriber: cfe-commits. Repository: rG LLVM Github Monorepo https://reviews.llvm.org/D156004 Files: clang/lib/Sema/SemaDeclCXX.cpp Index: cl

[PATCH] D155895: Anonymous unions should be transparent wrt `[[clang::trivial_abi]]`.

2023-07-21 Thread Łukasz Anforowicz via Phabricator via cfe-commits
lukasza marked 5 inline comments as done. lukasza added inline comments. Comment at: clang/lib/Sema/SemaDeclCXX.cpp:10325 - for (const auto *FD : RD.fields()) { -// Ill-formed if the field is an ObjectiveC pointer or of a type that is -// non-trivial for the purpose of

[PATCH] D156003: Anonymous unions should be transparent wrt `[[clang::trivial_abi]]`.

2023-07-21 Thread Łukasz Anforowicz via Phabricator via cfe-commits
lukasza created this revision. Herald added a project: All. lukasza requested review of this revision. Herald added a project: clang. Herald added a subscriber: cfe-commits. Consider the test input below: struct [[clang::trivial_abi]] Trivial { Trivial() {} Trivial(Trivial&& other) {}

[PATCH] D155895: Anonymous unions should be transparent wrt `[[clang::trivial_abi]]`.

2023-07-20 Thread Łukasz Anforowicz via Phabricator via cfe-commits
lukasza added inline comments. Comment at: clang/lib/Sema/SemaDeclCXX.cpp:10299 if (!HasNonDeletedCopyOrMoveConstructor()) { PrintDiagAndRemoveAttr(0); I tried to change this condition to `!RD.isAnonymousStructOrUnion() && !HasNonDeletedCopyOrMoveConst

[PATCH] D155895: git squash commit for trivial-abi-vs-anonymous-unions.

2023-07-20 Thread Łukasz Anforowicz via Phabricator via cfe-commits
lukasza created this revision. Herald added a project: All. lukasza requested review of this revision. Herald added a project: clang. Herald added a subscriber: cfe-commits. 1480d173fca1c83809ed5ac350c19021c7036a99 Anonymous unions should be transparent wrt `[[clang::trivial_abi]]`. Consider the

[PATCH] D27207: Adds hasUnqualifiedDesugaredType to allow matching through type sugar.

2016-11-29 Thread Łukasz Anforowicz via Phabricator via cfe-commits
lukasza added inline comments. Comment at: unittests/ASTMatchers/ASTMatchersTraversalTest.cpp:253 + matches("struct A {}; using B = A; B b;", + varDecl(hasType(hasUnqualifiedDesugaredType(recordType()); +} # deep testing suggestion If we do

[PATCH] D27207: Adds hasUnqualifiedDesugaredType to allow matching through type sugar.

2016-11-29 Thread Łukasz Anforowicz via Phabricator via cfe-commits
lukasza added a comment. I've tried replicating the deep-matching by saying qualType(hasType(hasUnqualifiedDesugaredType(hasDeclaration(... but this doesn't work because hasDeclaration only returns a matcher for a specific type from a subset of subclasses of Type - this is incompatible with exp

[PATCH] D27104: Unify and simplify the behavior of the hasDeclaration matcher.

2016-11-29 Thread Łukasz Anforowicz via Phabricator via cfe-commits
lukasza added a comment. Do we also need to update the documentation (e.g. to say that ElaboratedType is covered by hasDeclaration)? Other than that, I think this CL LGTM, although I would like to have a specific, working equivalent of the old, deep-maching hasDeclaration (at least when the in

[PATCH] D27104: Unify and simplify the behavior of the hasDeclaration matcher.

2016-11-28 Thread Łukasz Anforowicz via Phabricator via cfe-commits
lukasza added a comment. Forcing shallow matching means that unit test below will stop passing after this CL. TEST(HasDeclaration, DeepTagType) { std::string input = "class Foo {};\n" "using Bar = Foo;\n" "void Function(Bar param) {}\n"; // Matcher for declar