summaryrefslogtreecommitdiffstats
path: root/tests/varlocs.c
diff options
context:
space:
mode:
authorMark Wielaard <[email protected]>2021-12-04 01:18:42 +0100
committerMark Wielaard <[email protected]>2021-12-09 00:14:39 +0100
commitfd2cadbe4749f43551f7df90ee41837d83a6fbc4 (patch)
tree95ed89e06ddb3fe190aae4ebdb0f744f9f3732c6 /tests/varlocs.c
parent3e1e249bfd8455457716cce798f3f91d01f2f00d (diff)
tests: varlocs workaround format-overflow errors
In function ‘printf’, inlined from ‘handle_attr’ at varlocs.c:932:3: error: ‘%s’ directive argument is null [-Werror=format-overflow=] The warning is technically correct. A %s argument should not be NULL. Although in practice all implementations will print it as "(null)". Workaround this by simply changing the dwarf string functions to return an "<unknown>" string. The test is for the correct names, either "(null)" or "<unknown>" would make it fail (also remove a now unnecessary assert, the switch statement will check for unknown opcodes anyway). Signed-off-by: Mark Wielaard <[email protected]>
Diffstat (limited to 'tests/varlocs.c')
-rw-r--r--tests/varlocs.c11
1 files changed, 5 insertions, 6 deletions
diff --git a/tests/varlocs.c b/tests/varlocs.c
index 152c6555..d2c13767 100644
--- a/tests/varlocs.c
+++ b/tests/varlocs.c
@@ -76,7 +76,7 @@ dwarf_encoding_string (unsigned int code)
if (likely (code < sizeof (known) / sizeof (known[0])))
return known[code];
- return NULL;
+ return "<unknown encoding>";
}
static const char *
@@ -88,7 +88,7 @@ dwarf_tag_string (unsigned int tag)
DWARF_ALL_KNOWN_DW_TAG
#undef DWARF_ONE_KNOWN_DW_TAG
default:
- return NULL;
+ return "<unknown tag>";
}
}
@@ -101,7 +101,7 @@ dwarf_attr_string (unsigned int attrnum)
DWARF_ALL_KNOWN_DW_AT
#undef DWARF_ONE_KNOWN_DW_AT
default:
- return NULL;
+ return "<unknown attr>";
}
}
@@ -114,7 +114,7 @@ dwarf_form_string (unsigned int form)
DWARF_ALL_KNOWN_DW_FORM
#undef DWARF_ONE_KNOWN_DW_FORM
default:
- return NULL;
+ return "<unknown form>";
}
}
@@ -160,7 +160,7 @@ dwarf_opcode_string (unsigned int code)
if (likely (code < sizeof (known) / sizeof (known[0])))
return known[code];
- return NULL;
+ return "<unknown opcode>";
}
// Forward reference for print_expr_block.
@@ -198,7 +198,6 @@ print_expr (Dwarf_Attribute *attr, Dwarf_Op *expr, Dwarf_Addr addr, int depth)
uint8_t atom = expr->atom;
const char *opname = dwarf_opcode_string (atom);
- assert (opname != NULL);
switch (atom)
{