[PATCH] D143891: [Clang] Adjust triviality computation in QualType::isTrivialType to C++20 cases.

2023-02-22 Thread Roy Jacobson via Phabricator via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rG000ec50ef511: [Clang] Adjust triviality computation in QualType::isTrivialType to C++20 cases. (authored by royjacobson). Changed prior to commit: https://reviews.llvm.org/D143891?vs=496884=499635#toc

[PATCH] D143891: [Clang] Adjust triviality computation in QualType::isTrivialType to C++20 cases.

2023-02-22 Thread Corentin Jabot via Phabricator via cfe-commits
cor3ntin added a comment. In D143891#4144161 , @aaron.ballman wrote: > LGTM but we should add a release note for the change. This fixes P0848R3, which is a clang 16 feature. If we backport this we don't need a changelog entry. Repository: rG LLVM

[PATCH] D143891: [Clang] Adjust triviality computation in QualType::isTrivialType to C++20 cases.

2023-02-22 Thread Aaron Ballman via Phabricator via cfe-commits
aaron.ballman accepted this revision. aaron.ballman added a comment. This revision is now accepted and ready to land. LGTM but we should add a release note for the change. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D143891/new/

[PATCH] D143891: [Clang] Adjust triviality computation in QualType::isTrivialType to C++20 cases.

2023-02-21 Thread Corentin Jabot via Phabricator via cfe-commits
cor3ntin added a comment. This makes sense to me as is. The check `ClassDecl->hasTrivialDefaultConstructor() && !ClassDecl->hasNonTrivialDefaultConstructor()` can only be different from status quo in C++20. Changing `isTrivial` would be a lot more involved change that should not be in scope

[PATCH] D143891: [Clang] Adjust triviality computation in QualType::isTrivialType to C++20 cases.

2023-02-15 Thread Roy Jacobson via Phabricator via cfe-commits
royjacobson added a comment. It's an interesting discussion, I just want to remind that this change is for triviality rules from P0848 (conditionally trivial member functions) which is only going to ship in Clang 16 anyway. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION

[PATCH] D143891: [Clang] Adjust triviality computation in QualType::isTrivialType to C++20 cases.

2023-02-15 Thread Erich Keane via Phabricator via cfe-commits
erichkeane added a subscriber: rsmith. erichkeane added a comment. In D143891#4129214 , @hubert.reinterpretcast wrote: > In D143891#4122660 , @aaron.ballman > wrote: > >> This is an ABI breaking change, isn't

[PATCH] D143891: [Clang] Adjust triviality computation in QualType::isTrivialType to C++20 cases.

2023-02-15 Thread Hubert Tong via Phabricator via cfe-commits
hubert.reinterpretcast added a comment. In D143891#4122660 , @aaron.ballman wrote: > This is an ABI breaking change, isn't it? (The type trait now returns > something different than it did before, which could change instantiations or > object layout.)

[PATCH] D143891: [Clang] Adjust triviality computation in QualType::isTrivialType to C++20 cases.

2023-02-14 Thread Erich Keane via Phabricator via cfe-commits
erichkeane added a comment. In D143891#4125954 , @erichkeane wrote: > In D143891#4122731 , @aaron.ballman > wrote: > >> In D143891#4122668 , @royjacobson >> wrote: >>

[PATCH] D143891: [Clang] Adjust triviality computation in QualType::isTrivialType to C++20 cases.

2023-02-14 Thread Erich Keane via Phabricator via cfe-commits
erichkeane added a comment. In D143891#4122731 , @aaron.ballman wrote: > In D143891#4122668 , @royjacobson > wrote: > >> In D143891#4122660 , >> @aaron.ballman wrote:

[PATCH] D143891: [Clang] Adjust triviality computation in QualType::isTrivialType to C++20 cases.

2023-02-13 Thread Roy Jacobson via Phabricator via cfe-commits
royjacobson added inline comments. Comment at: clang/lib/AST/Type.cpp:2495 + // FIXME: We should merge this definition of triviality into + // CXXRecordDecl::isTrivial. Currently it computes the wrong thing. + return ClassDecl->hasTrivialDefaultConstructor() &&

[PATCH] D143891: [Clang] Adjust triviality computation in QualType::isTrivialType to C++20 cases.

2023-02-13 Thread Shafik Yaghmour via Phabricator via cfe-commits
shafik added a comment. In D143891#4122731 , @aaron.ballman wrote: > In D143891#4122668 , @royjacobson > wrote: > >> In D143891#4122660 , >> @aaron.ballman wrote: >>

[PATCH] D143891: [Clang] Adjust triviality computation in QualType::isTrivialType to C++20 cases.

2023-02-13 Thread Aaron Ballman via Phabricator via cfe-commits
aaron.ballman added a comment. In D143891#4122668 , @royjacobson wrote: > In D143891#4122660 , @aaron.ballman > wrote: > >> This is an ABI breaking change, isn't it? (The type trait now returns >> something

[PATCH] D143891: [Clang] Adjust triviality computation in QualType::isTrivialType to C++20 cases.

2023-02-13 Thread Roy Jacobson via Phabricator via cfe-commits
royjacobson added a comment. In D143891#4122660 , @aaron.ballman wrote: > This is an ABI breaking change, isn't it? (The type trait now returns > something different than it did before, which could change instantiations or > object layout.)

[PATCH] D143891: [Clang] Adjust triviality computation in QualType::isTrivialType to C++20 cases.

2023-02-13 Thread Aaron Ballman via Phabricator via cfe-commits
aaron.ballman added a comment. This is an ABI breaking change, isn't it? (The type trait now returns something different than it did before, which could change instantiations or object layout.) Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION

[PATCH] D143891: [Clang] Adjust triviality computation in QualType::isTrivialType to C++20 cases.

2023-02-13 Thread Roy Jacobson via Phabricator via cfe-commits
royjacobson created this revision. royjacobson added reviewers: erichkeane, cor3ntin. Herald added a project: All. royjacobson requested review of this revision. Herald added a project: clang. Herald added a subscriber: cfe-commits. Up to C++20, hasDefaultConstructor and