diff mbox series

toplev.c: Check for null argument to fprintf

Message ID 20200428070328.919664-1-stefansf@linux.ibm.com
State New
Headers show
Series toplev.c: Check for null argument to fprintf | expand

Commit Message

Stefan Schulze Frielinghaus April 28, 2020, 7:03 a.m. UTC
Ensure that CF does not equal NULL in function output_stack_usage_1
before calling fprintf.  This fixes the following warning/error:

gcc/toplev.c:976:13: error: argument 1 null where non-null expected [-Werror=nonnull]
  976 |     fprintf (cf, "\\n" HOST_WIDE_INT_PRINT_DEC " bytes (%s)",
      |     ~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  977 |       stack_usage,
      |       ~~~~~~~~~~~~
  978 |       stack_usage_kind_str[stack_usage_kind]);

An example call side where CF is NULL is in function output_stack_usage.

Bootstrapped and regtested successfully on S/390. Ok for master?

gcc/ChangeLog:

2020-04-28  Stefan Schulze Frielinghaus  <stefansf@linux.ibm.com>

	* toplev.c (output_stack_usage_1): Ensure that first
	argument to fprintf is not null.
---
 gcc/toplev.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Comments

Li, Pan2 via Gcc-patches April 29, 2020, 5:05 p.m. UTC | #1
On Tue, 2020-04-28 at 09:03 +0200, Stefan Schulze Frielinghaus via Gcc-patches
wrote:
> Ensure that CF does not equal NULL in function output_stack_usage_1
> before calling fprintf.  This fixes the following warning/error:
> 
> gcc/toplev.c:976:13: error: argument 1 null where non-null expected [-
> Werror=nonnull]
>   976 |     fprintf (cf, "\\n" HOST_WIDE_INT_PRINT_DEC " bytes (%s)",
>       |     ~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
>   977 |       stack_usage,
>       |       ~~~~~~~~~~~~
>   978 |       stack_usage_kind_str[stack_usage_kind]);
> 
> An example call side where CF is NULL is in function output_stack_usage.
> 
> Bootstrapped and regtested successfully on S/390. Ok for master?
> 
> gcc/ChangeLog:
> 
> 2020-04-28  Stefan Schulze Frielinghaus  <stefansf@linux.ibm.com>
> 
> 	* toplev.c (output_stack_usage_1): Ensure that first
> 	argument to fprintf is not null.
OK
jeff
diff mbox series

Patch

diff --git a/gcc/toplev.c b/gcc/toplev.c
index 4c8be502c71..5c026feece2 100644
--- a/gcc/toplev.c
+++ b/gcc/toplev.c
@@ -972,7 +972,7 @@  output_stack_usage_1 (FILE *cf)
       stack_usage += current_function_dynamic_stack_size;
     }
 
-  if (flag_callgraph_info & CALLGRAPH_INFO_STACK_USAGE)
+  if (cf && flag_callgraph_info & CALLGRAPH_INFO_STACK_USAGE)
     fprintf (cf, "\\n" HOST_WIDE_INT_PRINT_DEC " bytes (%s)",
 	     stack_usage,
 	     stack_usage_kind_str[stack_usage_kind]);