fix initialization in -O2 mode

This commit is contained in:
Krasimir Angelov
2026-01-14 14:52:29 +01:00
parent 76faee5cd5
commit a99cfb53f5
2 changed files with 4 additions and 3 deletions
+4 -2
View File
@@ -76,11 +76,11 @@ void PgfLinearizer::TreeNode::linearize_arg(PgfLinearizationOutputIface *out, Pg
TreeNode *arg = args;
while (d > 0) {
arg = arg->next_arg;
if (arg == 0)
if (arg == NULL)
break;
d--;
}
if (arg == 0)
if (arg == NULL)
throw pgf_error("Missing argument");
arg->linearize(out, linearizer, r);
}
@@ -235,6 +235,7 @@ bool PgfLinearizer::TreeLinNode::resolve(PgfLinearizer *linearizer)
while (rule_index < lin->rules.size()) {
Item *item = new (lin->rules[rule_index]) Item();
item->rule = lin->rules[rule_index];
int i = 0;
TreeNode *arg = args;
@@ -508,6 +509,7 @@ bool PgfLinearizer::TreeLinrefNode::resolve(PgfLinearizer *linearizer)
while (rule_index < lincat->rules.size()) {
Item *item = new (lincat->rules[lincat->n_lindefs+rule_index]) Item();
item->rule = lincat->rules[lincat->n_lindefs+rule_index];
if (!item->instantiate(item->rule->args[0], root->value)) {
rule_index++;
-1
View File
@@ -45,7 +45,6 @@ class PGF_INTERNAL_DECL PgfLinearizer : public PgfUnmarshaller {
size_t sz2 = rule->vars.size()*sizeof(size_t);
Item *new_item = (Item *) malloc(sz+sz2);
memset(new_item, 0, sz+sz2);
new_item->rule = rule;
return new_item;
}