outdent ();
}
dump (0, "free(p->s_%s);", st_lower(sbc->name) );
- dump (0, "p->s_%s = xstrdup (ds_value (&tokstr));",
+ dump (0, "p->s_%s = xstrdup (ds_c_str (&tokstr));",
st_lower (sbc->name));
dump (0, "lex_get ();");
if (sbc->restriction)
outdent ();
}
}
+ /* Now deal with the /ALGORITHM subcommand implicit to all commands */
+ dump(1,"else if ( get_syntax() != COMPATIBLE && lex_match_id(\"ALGORITHM\"))");
+ dump(1,"{");
+
+ dump (0, "lex_match ('=');");
+
+ dump(1,"if (lex_match_id(\"COMPATIBLE\"))");
+ dump(0,"set_cmd_algorithm(COMPATIBLE);");
+ outdent();
+ dump(1,"else if (lex_match_id(\"ENHANCED\"))");
+ dump(0,"set_cmd_algorithm(ENHANCED);");
+
+ dump (-1, "}");
+ outdent ();
+
dump (1, "if (!lex_match ('/'))");
dump (0, "break;");
dump (0, " Generated by q2c from %s on %s.", ifn, timep);
dump (0, " Do not modify!");
dump (0, " */");
+
+ dump (0, nullstr);
+ dump (0, "#include \"settings.h\"");
dump (0, nullstr);
}
dump_header ();
+
indent = 0;
dump (0, "#line %d \"%s\"", ln + 1, ifn);
while (get_line ())
{
indent = 0;
- dump (0, "#include <assert.h>");
dump (0, "#include <stdlib.h>");
dump (0, "#include \"alloc.h\"");
dump (0, "#include \"error.h\"");
dump (0, "#include \"lexer.h\"");
dump (0, "#include \"str.h\"");
dump (0, "#include \"var.h\"");
+
dump (0, nullstr);
}
else if (!strcmp (directive, "declarations"))
dump (0, "#line %d \"%s\"", ln + 1, ifn);
}
+
+
return EXIT_SUCCESS;
}