[PATCH 1/2] RFC: Add test coverage for _Pragma (PR preprocessor 69126, 69543, 69558)

Jeff Law law@redhat.com
Mon Feb 22 18:23:00 GMT 2016


On 02/20/2016 09:46 AM, David Malcolm wrote:
> We had some regressions in the ability for _Pragma to disable a warning
> (PR preprocessor/69126, PR preprocessor/69543, PR preprocessor/69558).
>
> This patch attempts to add more test coverage for this, for the
> various combinations of:
>    - various warnings:
>      -Wunused-variable
>      -Wuninitialized
>      -Wdeprecated-declarations
>    - various combinations of location of _Pragma relative to location of
>      the warning:
>       - _Pragma is in a macro, warning isn't a macro
>       - neither is in a macro
>       - _Pragma isnt't in a macro, warning is in a macro
>       - in different macros
>       - both in the same macro
>    - C vs C++ frontend.
>
> It adds some XFAILs:
>    - pr69543-1.c for C++ (fixed in the followup patch)
>    - pr69543-3.c for both C and C++
>    - pr69543-4.c for both C and C++
>    - pr69558.c for C++ (moving it from gcc.dg to c-c++-common,
>      marking it as xfail for C++ for now)
>
> I've also tested the new cases on gcc 5.  The only regression we
> currently have in trunk relative to gcc 5 is
> c-c++-common/pr69543-1.c lines 19, which the followup patch fixes.
>
> Successfully bootstrapped&regrtested on x86_64-pc-linux-gnu in
> combination with the followup patch.
>
> OK for trunk?
>
> gcc/testsuite/ChangeLog:
> 	PR preprocessor/69126
> 	PR preprocessor/69543
> 	PR preprocessor/69558
> 	* c-c++-common/pr69126.c (MACRO_1, test_1): New.
> 	(f): Rename to...
> 	(test_2): ...this, and add leading comment.
> 	(MACRO_3, test_3): New.
> 	(MACRO_4A, MACRO_4B, test_4): New.
> 	(MACRO): Rename to...
> 	(MACRO_5): ...this.
> 	(g): Rename to...
> 	(test_5): ...this, updating for renaming of MACRO, and
> 	add leading comment.
> 	* c-c++-common/pr69543-1.c: New.
> 	* c-c++-common/pr69543-2.c: New.
> 	* c-c++-common/pr69543-3.c: New.
> 	* c-c++-common/pr69543-4.c: New.
> 	* c-c++-common/pr69558-1.c: New.
> 	* c-c++-common/pr69558-2.c: New.
> 	* c-c++-common/pr69558-3.c: New.
> 	* c-c++-common/pr69558-4.c: New.
> 	* gcc.dg/pr69558.c: Move to...
> 	* c-c++-common/pr69558.c: ...here.  Add dg-bogus directives, with
> 	xfail for c++.
Yes, this is fine for the trunk.

jeff



More information about the Gcc-patches mailing list