testsuite: Silence analyzer/pr51628-30.c for default_packed

Message ID 20220508073104.1698197-1-dimitar@dinux.eu
State Committed
Commit 8a39c7c128dbf4405821778724c5a1017ab12e06
Headers
Series testsuite: Silence analyzer/pr51628-30.c for default_packed |

Commit Message

Dimitar Dimitrov May 8, 2022, 7:31 a.m. UTC
  On default_packed targets like PRU, a warning in the file included from
analyzer/pr51628-30.c is reported as spurious one, even though it has been
annotated there:

  Excess errors:
  gcc/gcc/testsuite/gcc.dg/analyzer/torture/../../../c-c++-common/pr51628-30.c:7:19: warning: 'packed' attribute ignored for field of type 'struct B' [-Wattributes]

DejaGnu does not preprocess the C test case sources.  Hence the "dg-*"
statements in included files are ignored.

Mark that gcc.dg/analyzer/torture/pr51628-30.c generates excess warnings
for default_packed targets.  This is safe because the original test case
covered an ICE, not a diagnostic error.

Ok for trunk?

gcc/testsuite/ChangeLog:

	* gcc.dg/analyzer/torture/pr51628-30.c: Test can spill excess
	errors for default_packed targets.

CC: David Malcolm <dmalcolm@redhat.com>
Signed-off-by: Dimitar Dimitrov <dimitar@dinux.eu>
---
 gcc/testsuite/gcc.dg/analyzer/torture/pr51628-30.c | 1 +
 1 file changed, 1 insertion(+)
  

Comments

David Malcolm May 9, 2022, 12:53 p.m. UTC | #1
On Sun, 2022-05-08 at 10:31 +0300, Dimitar Dimitrov wrote:
> On default_packed targets like PRU, a warning in the file included
> from
> analyzer/pr51628-30.c is reported as spurious one, even though it has
> been
> annotated there:
> 
>   Excess errors:
>   gcc/gcc/testsuite/gcc.dg/analyzer/torture/../../../c-c++-
> common/pr51628-30.c:7:19: warning: 'packed' attribute ignored for
> field of type 'struct B' [-Wattributes]
> 
> DejaGnu does not preprocess the C test case sources.  Hence the "dg-
> *"
> statements in included files are ignored.
> 
> Mark that gcc.dg/analyzer/torture/pr51628-30.c generates excess
> warnings
> for default_packed targets.  This is safe because the original test
> case
> covered an ICE, not a diagnostic error.

Indeed; for reference, the ICE was part of PR analyzer/93388 (part of
ensuring that -fanalyzer doesn't ICE on less common tree codes).

> 
> Ok for trunk?

Thanks; looks good to me.  Sorry about the noise.

Dave

> 
> gcc/testsuite/ChangeLog:
> 
>         * gcc.dg/analyzer/torture/pr51628-30.c: Test can spill excess
>         errors for default_packed targets.
> 
> CC: David Malcolm <dmalcolm@redhat.com>
> Signed-off-by: Dimitar Dimitrov <dimitar@dinux.eu>
> ---
>  gcc/testsuite/gcc.dg/analyzer/torture/pr51628-30.c | 1 +
>  1 file changed, 1 insertion(+)
> 
> diff --git a/gcc/testsuite/gcc.dg/analyzer/torture/pr51628-30.c
> b/gcc/testsuite/gcc.dg/analyzer/torture/pr51628-30.c
> index 4513e0f890c..abc13413f2b 100644
> --- a/gcc/testsuite/gcc.dg/analyzer/torture/pr51628-30.c
> +++ b/gcc/testsuite/gcc.dg/analyzer/torture/pr51628-30.c
> @@ -1,3 +1,4 @@
>  /* { dg-additional-options "-Wno-address-of-packed-member" } */
> +/* { dg-excess-errors "warnings about ignored 'packed' attribute" {
> target default_packed } } */
>  
>  #include "../../../c-c++-common/pr51628-30.c"
  

Patch

diff --git a/gcc/testsuite/gcc.dg/analyzer/torture/pr51628-30.c b/gcc/testsuite/gcc.dg/analyzer/torture/pr51628-30.c
index 4513e0f890c..abc13413f2b 100644
--- a/gcc/testsuite/gcc.dg/analyzer/torture/pr51628-30.c
+++ b/gcc/testsuite/gcc.dg/analyzer/torture/pr51628-30.c
@@ -1,3 +1,4 @@ 
 /* { dg-additional-options "-Wno-address-of-packed-member" } */
+/* { dg-excess-errors "warnings about ignored 'packed' attribute" { target default_packed } } */
 
 #include "../../../c-c++-common/pr51628-30.c"