[clang] Changed Checks from TriviallyCopyable to TriviallyCopyConstructible (PR #76680)

via cfe-commits cfe-commits at lists.llvm.org
Thu Jan 4 06:53:08 PST 2024


================
@@ -2605,18 +2605,26 @@ bool QualType::isTrivialType(const ASTContext &Context) const {
 }
 
 bool QualType::isTriviallyCopyableType(const ASTContext &Context) const {
-  if ((*this)->isArrayType())
-    return Context.getBaseElementType(*this).isTriviallyCopyableType(Context);
+  return isTriviallyCopyableTypeImpl(*this,Context,false);
+}
 
-  if (hasNonTrivialObjCLifetime())
+bool QualType::isTriviallyCopyConstructibleType(const ASTContext &Context) const {
+  return isTriviallyCopyableTypeImpl(*this,Context,true);
+}
+
+bool QualType::isTriviallyCopyableTypeImpl(const QualType &type, const ASTContext &Context,bool copy_constructible){
----------------
cor3ntin wrote:

```suggestion
static bool isTriviallyCopyableTypeImpl(const QualType &type, const ASTContext &Context,bool IsCopyConstructible){
```

https://github.com/llvm/llvm-project/pull/76680


More information about the cfe-commits mailing list