gdb/gdbarch: split postdefault setup from invalid check in gdbarch.py
authorAndrew Burgess <aburgess@redhat.com>
Thu, 23 Feb 2023 18:18:45 +0000 (18:18 +0000)
committerAndrew Burgess <aburgess@redhat.com>
Mon, 13 Mar 2023 21:51:03 +0000 (21:51 +0000)
commit74b1406e90bfa156aa324f9ecde424a5488cac51
tree65f9d585cfdce73bfaadcdb31e72f2cc84935792
parent0605df704d6f3c28c47bf6cd623bb237919e17a1
gdb/gdbarch: split postdefault setup from invalid check in gdbarch.py

Restructure how gdbarch.py generates the verify_gdbarch function.
Previously the postdefault handling was bundled together with the
validation.  This means that a field can't have both a postdefault,
and set its invalid attribute to a string.

This doesn't seem reasonable to me, I see no reason why a field can't
have both a postdefault (used when the tdep doesn't set the field),
and an invalid expression, which can be used to validate the value
that a tdep might set.

In this commit I restructure the verify_gdbarch generation code to
allow the above, there is no change in the actual generated code in
this commit, that will come in later commit.

Approved-By: Simon Marchi <simon.marchi@efficios.com>
gdb/gdbarch.py
gdb/gdbarch_components.py