+2019-10-02 Andreas Arnez <arnez@linux.ibm.com>
+
+ * gdb.python/py-format-string.c (string.h): New include.
+ (main): Fill a_struct_with_union.the_union.an_int with bytes of
+ the same value, for endianness-independence.
+ * gdb.python/py-format-string.exp (default_regexp_dict)
+ (test_pretty_structs, test_format): Adjust expected output to the
+ changed initialization.
+
2019-10-02 Tom Tromey <tromey@adacore.com>
* gdb.ada/catch_ex_std.exp: Add $_ada_exception test.
You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>. */
+#include <string.h>
+
typedef struct point
{
int x;
struct point another_point = { 123, 456 };
struct_union_t a_struct_with_union;
- a_struct_with_union.the_union.an_int = 42;
+ /* Fill the union in an endianness-independent way. */
+ memset (&a_struct_with_union.the_union, 42,
+ sizeof (a_struct_with_union.the_union));
enum_t an_enum = ENUM_BAR;
"a_point_t_pointer" $default_pointer_regexp \
"a_point_t_ref" "Pretty Point \\(42, 12\\)" \
"another_point" "Pretty Point \\(123, 456\\)" \
- "a_struct_with_union" "\\{the_union = \\{an_int = 42, a_char = 42 '\\*'\\}\\}" \
+ "a_struct_with_union" "\\{the_union = \\{an_int = 707406378, a_char = 42 '\\*'\\}\\}" \
"an_enum" "ENUM_BAR" \
"a_string" "${default_pointer_regexp} \"hello world\"" \
"a_binary_string" "${default_pointer_regexp} \"hello\"" \
global current_lang
set a_struct_with_union_pretty \
- "\\{\[\r\n\]+ the_union = \\{\[\r\n\]+ an_int = 42,\[\r\n\]+ a_char = 42 '\\*'\[\r\n\]+ \\}\[\r\n\]+\\}"
+ "\\{\[\r\n\]+ the_union = \\{\[\r\n\]+ an_int = 707406378,\[\r\n\]+ a_char = 42 '\\*'\[\r\n\]+ \\}\[\r\n\]+\\}"
check_var_with_bool_opt "pretty_structs" "a_point_t"
check_var_with_bool_opt "pretty_structs" "a_point_t_pointer"
check_format_string "a_point_t_pointer" $opts
check_format_string "another_point" $opts
check_format_string "a_struct_with_union" $opts \
- "\\{the_union = \\{an_int = 0x2a, a_char = 0x2a\\}\\}"
+ "\\{the_union = \\{an_int = 0x2a2a2a2a, a_char = 0x2a\\}\\}"
check_format_string "an_enum" $opts \
"0x1"
check_format_string "a_string" $opts \
$decimal_pointer_regexp
check_format_string "another_point" $opts
check_format_string "a_struct_with_union" $opts \
- "\\{the_union = \\{an_int = 42, a_char = 42\\}\\}"
+ "\\{the_union = \\{an_int = 707406378, a_char = 42\\}\\}"
check_format_string "an_enum" $opts \
"1"
check_format_string "a_string" $opts \