[committed] bpf: avoid possible use of uninitialized variable

Message ID 20221115190523.23018-1-david.faust@oracle.com
State Committed
Commit 6052482f841634522c6d2e56c4231f8df2dc6d3e
Headers
Series [committed] bpf: avoid possible use of uninitialized variable |

Commit Message

David Faust Nov. 15, 2022, 7:05 p.m. UTC
  Fix a maybe-uninitialized warning introduced in commit:
068baae1864 bpf: add preserve_field_info builtin

Thanks to Jan-Benedict Glaw for pointing this out.

Tested on bpf-unknown-none, committed as obvious.

gcc/

	* config/bpf/bpf.cc (bpf_expand_builtin): Avoid use of uninitialized
	variable in error case.
---
 gcc/config/bpf/bpf.cc | 7 +++++--
 1 file changed, 5 insertions(+), 2 deletions(-)
  

Patch

diff --git a/gcc/config/bpf/bpf.cc b/gcc/config/bpf/bpf.cc
index 16af2412bf6..51e46955015 100644
--- a/gcc/config/bpf/bpf.cc
+++ b/gcc/config/bpf/bpf.cc
@@ -1254,11 +1254,14 @@  bpf_expand_builtin (tree exp, rtx target ATTRIBUTE_UNUSED,
       /* A resolved overloaded __builtin_preserve_field_info.  */
       tree src = CALL_EXPR_ARG (exp, 0);
       tree kind_tree = CALL_EXPR_ARG (exp, 1);
-      unsigned HOST_WIDE_INT kind_val;
+      unsigned HOST_WIDE_INT kind_val = 0;
       if (tree_fits_uhwi_p (kind_tree))
 	kind_val = tree_to_uhwi (kind_tree);
       else
-	error ("invalid argument to built-in function");
+	{
+	  error ("invalid argument to built-in function");
+	  return expand_normal (error_mark_node);
+	}
 
       enum btf_core_reloc_kind kind = (enum btf_core_reloc_kind) kind_val;