[cfe-commits] r101384 - in /cfe/trunk: include/clang/Basic/DiagnosticSemaKinds.td lib/Sema/SemaDecl.cpp test/Sema/bitfield.c test/SemaObjC/class-bitfield.m
Douglas Gregor
dgregor at apple.com
Thu Apr 15 11:57:32 PDT 2010
Much nicer, thanks!
Sent from my iPhone
On Apr 15, 2010, at 11:47 AM, Anders Carlsson <andersca at mac.com> wrote:
> Author: andersca
> Date: Thu Apr 15 13:47:32 2010
> New Revision: 101384
>
> URL: http://llvm.org/viewvc/llvm-project?rev=101384&view=rev
> Log:
> Improve the bit-field too wide error message.
>
> Modified:
> cfe/trunk/include/clang/Basic/DiagnosticSemaKinds.td
> cfe/trunk/lib/Sema/SemaDecl.cpp
> cfe/trunk/test/Sema/bitfield.c
> cfe/trunk/test/SemaObjC/class-bitfield.m
>
> Modified: cfe/trunk/include/clang/Basic/DiagnosticSemaKinds.td
> URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/include/clang/Basic/DiagnosticSemaKinds.td?rev=101384&r1=101383&r2=101384&view=diff
> ===
> ===
> ===
> =====================================================================
> --- cfe/trunk/include/clang/Basic/DiagnosticSemaKinds.td (original)
> +++ cfe/trunk/include/clang/Basic/DiagnosticSemaKinds.td Thu Apr 15
> 13:47:32 2010
> @@ -1666,9 +1666,9 @@
> "anonymous bit-field has negative width (%0)">;
> def err_bitfield_has_zero_width : Error<"named bit-field %0 has zero
> width">;
> def err_bitfield_width_exceeds_type_size : Error<
> - "size of bit-field %0 exceeds size of its type (%1 bits)">;
> + "size of bit-field %0 (%1 bits) exceeds size of its type (%2
> bits)">;
> def err_anon_bitfield_width_exceeds_type_size : Error<
> - "size of anonymous bit-field exceeds size of its type (%0 bits)">;
> + "size of anonymous bit-field (%0 bits) exceeds size of its type
> (%1 bits)">;
> def warn_missing_braces : Warning<
> "suggest braces around initialization of subobject">,
> InGroup<DiagGroup<"missing-braces">>, DefaultIgnore;
>
> Modified: cfe/trunk/lib/Sema/SemaDecl.cpp
> URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/Sema/SemaDecl.cpp?rev=101384&r1=101383&r2=101384&view=diff
> ===
> ===
> ===
> =====================================================================
> --- cfe/trunk/lib/Sema/SemaDecl.cpp (original)
> +++ cfe/trunk/lib/Sema/SemaDecl.cpp Thu Apr 15 13:47:32 2010
> @@ -5373,9 +5373,9 @@
> if (Value.getZExtValue() > TypeSize) {
> if (FieldName)
> return Diag(FieldLoc,
> diag::err_bitfield_width_exceeds_type_size)
> - << FieldName << (unsigned)TypeSize;
> + << FieldName << (unsigned)Value.getZExtValue() <<
> (unsigned)TypeSize;
> return Diag(FieldLoc,
> diag::err_anon_bitfield_width_exceeds_type_size)
> - << (unsigned)TypeSize;
> + << (unsigned)Value.getZExtValue() << (unsigned)TypeSize;
> }
> }
>
>
> Modified: cfe/trunk/test/Sema/bitfield.c
> URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/test/Sema/bitfield.c?rev=101384&r1=101383&r2=101384&view=diff
> ===
> ===
> ===
> =====================================================================
> --- cfe/trunk/test/Sema/bitfield.c (original)
> +++ cfe/trunk/test/Sema/bitfield.c Thu Apr 15 13:47:32 2010
> @@ -5,7 +5,7 @@
> int a : -1; // expected-error{{bit-field 'a' has negative width}}
>
> // rdar://6081627
> - int b : 33; // expected-error{{size of bit-field 'b' exceeds size
> of its type (32 bits)}}
> + int b : 33; // expected-error{{size of bit-field 'b' (33 bits)
> exceeds size of its type (32 bits)}}
>
> int c : (1 + 0.25); // expected-error{{expression is not an
> integer constant expression}}
> int d : (int)(1 + 0.25);
> @@ -21,7 +21,7 @@
> int g : (_Bool)1;
>
> // PR4017
> - char : 10; // expected-error {{size of anonymous bit-field
> exceeds size of its type (8 bits)}}
> + char : 10; // expected-error {{size of anonymous bit-field
> (10 bits) exceeds size of its type (8 bits)}}
> unsigned : -2; // expected-error {{anonymous bit-field has
> negative width (-2)}}
> float : 12; // expected-error {{anonymous bit-field has non-
> integral type 'float'}}
> };
>
> Modified: cfe/trunk/test/SemaObjC/class-bitfield.m
> URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/test/SemaObjC/class-bitfield.m?rev=101384&r1=101383&r2=101384&view=diff
> ===
> ===
> ===
> =====================================================================
> --- cfe/trunk/test/SemaObjC/class-bitfield.m (original)
> +++ cfe/trunk/test/SemaObjC/class-bitfield.m Thu Apr 15 13:47:32 2010
> @@ -5,7 +5,7 @@
> int a : -1; // expected-error{{bit-field 'a' has negative width}}
>
> // rdar://6081627
> - int b : 33; // expected-error{{size of bit-field 'b' exceeds size
> of its type (32 bits)}}
> + int b : 33; // expected-error{{size of bit-field 'b' (33 bits)
> exceeds size of its type (32 bits)}}
>
> int c : (1 + 0.25); // expected-error{{expression is not an
> integer constant expression}}
> int d : (int)(1 + 0.25);
>
>
> _______________________________________________
> cfe-commits mailing list
> cfe-commits at cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits
More information about the cfe-commits
mailing list