In s390-mkopc.c, the function insertExpandedMnemonic() searches for the
first occurrence of '*' or '$' in the given mnemonic, and, if a match is
found, chooses an extension table using a switch() on that character. The
switch statement contains a default case that prints an error message and
does not set the extension table. Although this case cannot occur, some
GCC versions obviously conclude that the extension table might have been
left uninitialized after the switch statement and consequently emit
maybe-uninitialized warnings for the variables 'ext_table' and
'ext_table_length'.
Circumvent the warning by handling the unreachable default case with
abort().
opcodes/
* s390-mkopc.c (insertExpandedMnemonic): Handle unreachable
default case with abort() instead of printing an error message and
continuing, to avoid a maybe-uninitialized warning.
+2020-07-29 Andreas Arnez <arnez@linux.ibm.com>
+
+ * s390-mkopc.c (insertExpandedMnemonic): Handle unreachable
+ default case with abort() instead of printing an error message and
+ continuing, to avoid a maybe-uninitialized warning.
+
2020-07-24 Nick Clifton <nickc@redhat.com>
* po/de.po: Updated German translation.
ext_table = s390_crb_extensions;
ext_table_length = NUM_CRB_EXTENSIONS;
break;
- default: fprintf (stderr, "Unknown tag char: %c\n", *tag);
+ default:
+ abort (); /* Should be unreachable. */
}
for (i = 0; i < ext_table_length; i++)