This revision was automatically updated to reflect the committed changes.
Closed by commit rL323208: [clang-tidy] Handle bitfields in 
modernize-use-default-member-init if using… (authored by malcolm.parsons, 
committed by ).
Herald added a subscriber: llvm-commits.

Repository:
  rL LLVM

https://reviews.llvm.org/D42413

Files:
  clang-tools-extra/trunk/clang-tidy/modernize/UseDefaultMemberInitCheck.cpp
  
clang-tools-extra/trunk/test/clang-tidy/modernize-use-default-member-init-bitfield.cpp


Index: 
clang-tools-extra/trunk/clang-tidy/modernize/UseDefaultMemberInitCheck.cpp
===================================================================
--- clang-tools-extra/trunk/clang-tidy/modernize/UseDefaultMemberInitCheck.cpp
+++ clang-tools-extra/trunk/clang-tidy/modernize/UseDefaultMemberInitCheck.cpp
@@ -167,7 +167,9 @@
           isDefaultConstructor(), unless(isInstantiated()),
           forEachConstructorInitializer(
               cxxCtorInitializer(
-                  forField(unless(anyOf(isBitField(),
+                  forField(unless(anyOf(getLangOpts().CPlusPlus2a
+                                            ? unless(anything())
+                                            : isBitField(),
                                         hasInClassInitializer(anything()),
                                         hasParent(recordDecl(isUnion()))))),
                   isWritten(), withInitializer(ignoringImplicit(Init)))
Index: 
clang-tools-extra/trunk/test/clang-tidy/modernize-use-default-member-init-bitfield.cpp
===================================================================
--- 
clang-tools-extra/trunk/test/clang-tidy/modernize-use-default-member-init-bitfield.cpp
+++ 
clang-tools-extra/trunk/test/clang-tidy/modernize-use-default-member-init-bitfield.cpp
@@ -0,0 +1,10 @@
+// RUN: %check_clang_tidy %s modernize-use-default-member-init %t -- -- 
-std=c++2a
+
+struct PositiveBitField
+{
+  PositiveBitField() : i(6) {}
+  // CHECK-FIXES: PositiveBitField()  {}
+  int i : 5;
+  // CHECK-MESSAGES: :[[@LINE-1]]:7: warning: use default member initializer 
for 'i' [modernize-use-default-member-init]
+  // CHECK-FIXES: int i : 5{6};
+};


Index: clang-tools-extra/trunk/clang-tidy/modernize/UseDefaultMemberInitCheck.cpp
===================================================================
--- clang-tools-extra/trunk/clang-tidy/modernize/UseDefaultMemberInitCheck.cpp
+++ clang-tools-extra/trunk/clang-tidy/modernize/UseDefaultMemberInitCheck.cpp
@@ -167,7 +167,9 @@
           isDefaultConstructor(), unless(isInstantiated()),
           forEachConstructorInitializer(
               cxxCtorInitializer(
-                  forField(unless(anyOf(isBitField(),
+                  forField(unless(anyOf(getLangOpts().CPlusPlus2a
+                                            ? unless(anything())
+                                            : isBitField(),
                                         hasInClassInitializer(anything()),
                                         hasParent(recordDecl(isUnion()))))),
                   isWritten(), withInitializer(ignoringImplicit(Init)))
Index: clang-tools-extra/trunk/test/clang-tidy/modernize-use-default-member-init-bitfield.cpp
===================================================================
--- clang-tools-extra/trunk/test/clang-tidy/modernize-use-default-member-init-bitfield.cpp
+++ clang-tools-extra/trunk/test/clang-tidy/modernize-use-default-member-init-bitfield.cpp
@@ -0,0 +1,10 @@
+// RUN: %check_clang_tidy %s modernize-use-default-member-init %t -- -- -std=c++2a
+
+struct PositiveBitField
+{
+  PositiveBitField() : i(6) {}
+  // CHECK-FIXES: PositiveBitField()  {}
+  int i : 5;
+  // CHECK-MESSAGES: :[[@LINE-1]]:7: warning: use default member initializer for 'i' [modernize-use-default-member-init]
+  // CHECK-FIXES: int i : 5{6};
+};
_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to