diff options
author | Mark Wielaard <mjw@redhat.com> | 2009-07-07 20:19:40 +0200 |
---|---|---|
committer | Mark Wielaard <mjw@redhat.com> | 2009-07-07 20:19:40 +0200 |
commit | 5cc5056844a402c6cf466c8ca45119a4540b5900 (patch) | |
tree | a2dc259580a48e577ffc7bc764ccf02f8978be0c /loc2c.c | |
parent | 83eaf9b5f3d1f1287b7962efc6bc703357b984ba (diff) | |
download | systemtap-steved-5cc5056844a402c6cf466c8ca45119a4540b5900.tar.gz systemtap-steved-5cc5056844a402c6cf466c8ca45119a4540b5900.tar.xz systemtap-steved-5cc5056844a402c6cf466c8ca45119a4540b5900.zip |
PR10348 Compilation failure with gcc 4.5 snapshot: switch jumps over vars.
* loc2c-test.c (print_vars): Define attr_mem, typedie_mem and typedie before
switch.
* loc2c.c (translate): Wrap case DW_OP_drop in block brackets.
(location_relative): Initialize stack.
Diffstat (limited to 'loc2c.c')
-rw-r--r-- | loc2c.c | 10 |
1 files changed, 6 insertions, 4 deletions
@@ -251,9 +251,11 @@ translate (struct obstack *pool, int indent, Dwarf_Addr addrbias, break; case DW_OP_drop: - POP (ignore); - emit ("%*s/* drop " STACKFMT "*/\n", indent * 2, "", ignore); - break; + { + POP (ignore); + emit ("%*s/* drop " STACKFMT "*/\n", indent * 2, "", ignore); + break; + } case DW_OP_pick: sp = expr[i].number; @@ -622,7 +624,7 @@ location_relative (struct obstack *pool, const Dwarf_Op *expr, size_t len, Dwarf_Addr address, struct location **input, Dwarf_Attribute *fb_attr) { - Dwarf_Sword *stack; + Dwarf_Sword *stack = NULL; unsigned int stack_depth = 0, max_stack = 0; inline void deepen (void) { |