Branch: Tag:

2014-12-04

2014-12-04 19:23:43 by Henrik Grubbström (Grubba) <grubba@grubba.org>

decode_value: Fix handling of inherits.

Use program.c:lower_inherit() in decode_value(). The new
parent flags handling in low_inherit() isn't safe to use
from decode_value(), since the program_state stack isn't
necessarily the same as when the encoded program was
initially compiled.

Fixes various dumping errors.

4635:       EDB(5,    fprintf(stderr, -  "%*slow_inherit(..., \"%s\")\n", +  "%*slower_inherit(..., \"%s\")\n",    data->depth, "",    name?name->str:"NULL"));   
4643:    *    * storage, inherits and identifier_references    */ -  low_inherit(prog, parent, parent_identifier, +  lower_inherit(prog, parent, parent_identifier,    parent_offset + 42, id_flags, name);       pop_n_elems(3);