]> granicus.if.org Git - clang/commitdiff
The Syntax enumeration requires at least three bits to store all of its values. Incre...
authorAaron Ballman <aaron@aaronballman.com>
Thu, 20 Nov 2014 21:34:56 +0000 (21:34 +0000)
committerAaron Ballman <aaron@aaronballman.com>
Thu, 20 Nov 2014 21:34:56 +0000 (21:34 +0000)
There is no test for this fix because I could find no reasonable way to trigger a visible failure from it.

Thanks to Doug Gregor for spotting this!

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@222456 91177308-0d34-0410-b5e6-96231b3b80d8

include/clang/Sema/AttributeList.h

index 39e7ccd7b26abd70e7b7f2844a1c66244e0f9d68..c8e8625b0c9931486aefe571fa1a5ce73d455ffc 100644 (file)
@@ -94,10 +94,10 @@ private:
 
   /// The number of expression arguments this attribute has.
   /// The expressions themselves are stored after the object.
-  unsigned NumArgs : 16;
+  unsigned NumArgs : 15;
 
   /// Corresponds to the Syntax enum.
-  unsigned SyntaxUsed : 2;
+  unsigned SyntaxUsed : 3;
 
   /// True if already diagnosed as invalid.
   mutable unsigned Invalid : 1;