[committed,PR,middle-end/117263] Avoid unused-but-set warning in genautomata

Message ID c27d6b77-2893-40d6-aff9-14783cade1cc@gmail.com
State Committed
Commit b81bb3ed216213fdaba82addae9fc34619ad6ec7
Headers
Series [committed,PR,middle-end/117263] Avoid unused-but-set warning in genautomata |

Checks

Context Check Description
linaro-tcwg-bot/tcwg_simplebootstrap_build--master-aarch64-bootstrap success Build passed
linaro-tcwg-bot/tcwg_simplebootstrap_build--master-arm-bootstrap fail Patch failed to apply
linaro-tcwg-bot/tcwg_gcc_build--master-arm fail Patch failed to apply
linaro-tcwg-bot/tcwg_gcc_build--master-aarch64 fail Patch failed to apply

Commit Message

Jeffrey Law Feb. 9, 2025, 4:18 p.m. UTC
  This is a trivial bug where a user wanted to define NDEBUG when building 
genautomata, presumably trying to debug its behavior.  This resulted in 
a unused-but-set warning which caused the build to fail.

Dario included the trivial fixes in the PR which I put through the usual 
bootstrap & regression test as well as compiling genautomata with NDEBUG.

Pushing to the trunk.

I'm not addressing whether or not NDEBUG is still useful.  That would be 
Vlad's call.

Jeff
commit b81bb3ed216213fdaba82addae9fc34619ad6ec7
Author: Dario Gjorgjevski <dario.gjorgjevski@gmail.com>
Date:   Sun Feb 9 09:16:31 2025 -0700

    [PR middle-end/117263] Avoid unused-but-set warning in genautomata
    
    This is a trivial bug where a user wanted to define NDEBUG when building
    genautomata, presumably trying to debug its behavior.  This resulted in a
    unused-but-set warning which caused the build to fail.
    
    Dario included the trivial fixes in the PR which I put through the usual
    bootstrap & regression test as well as compiling genautomata with NDEBUG.
    
    Pushing to the trunk.
    
            PR middle-end/117263
    gcc/
            * genautomata.cc (output_statistics): Avoid set but unnused warnings
            when compiling with NDEBUG.
  

Patch

diff --git a/gcc/genautomata.cc b/gcc/genautomata.cc
index 69f856d141c..4059a229f96 100644
--- a/gcc/genautomata.cc
+++ b/gcc/genautomata.cc
@@ -9088,8 +9088,8 @@  static void
 output_statistics (FILE *f)
 {
   automaton_t automaton;
-  int states_num;
 #ifndef NDEBUG
+  int states_num;
   int transition_comb_vect_els = 0;
   int transition_full_vect_els = 0;
   int min_issue_delay_vect_els = 0;
@@ -9106,13 +9106,17 @@  output_statistics (FILE *f)
 	       automaton->NDFA_states_num, automaton->NDFA_arcs_num);
       fprintf (f, "    %5d DFA states,           %5d DFA arcs\n",
 	       automaton->DFA_states_num, automaton->DFA_arcs_num);
+#ifndef NDEBUG
       states_num = automaton->DFA_states_num;
+#endif
       if (!no_minimization_flag)
 	{
 	  fprintf (f, "    %5d minimal DFA states,   %5d minimal DFA arcs\n",
 		   automaton->minimal_DFA_states_num,
 		   automaton->minimal_DFA_arcs_num);
+#ifndef NDEBUG
 	  states_num = automaton->minimal_DFA_states_num;
+#endif
 	}
       fprintf (f, "    %5d all insns      %5d insn equivalence classes\n",
 	       description->insns_num, automaton->insn_equiv_classes_num);