(generate_2int): don't depend on flags being unsigned
git-svn-id: svn://svn.h5l.se/heimdal/trunk/heimdal@5393 ec53bebd-3082-4978-b11e-865c3cabbd6b
This commit is contained in:
@@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Copyright (c) 1997 Kungliga Tekniska H<>gskolan
|
* Copyright (c) 1997, 1999 Kungliga Tekniska H<>gskolan
|
||||||
* (Royal Institute of Technology, Stockholm, Sweden).
|
* (Royal Institute of Technology, Stockholm, Sweden).
|
||||||
* All rights reserved.
|
* All rights reserved.
|
||||||
*
|
*
|
||||||
@@ -54,17 +54,17 @@ generate_2int (Symbol *s)
|
|||||||
fprintf (codefile,
|
fprintf (codefile,
|
||||||
"int %s2int(%s f)\n"
|
"int %s2int(%s f)\n"
|
||||||
"{\n"
|
"{\n"
|
||||||
"\treturn\n",
|
"int r = 0;\n",
|
||||||
s->gen_name, s->gen_name);
|
s->gen_name, s->gen_name);
|
||||||
|
|
||||||
for (m = t->members; m && m->val != tag; m = m->next) {
|
for (m = t->members; m && m->val != tag; m = m->next) {
|
||||||
fprintf (codefile, "\t(f.%s << %d) |\n",
|
fprintf (codefile, "if(f.%s) r |= (1 << %d);\n",
|
||||||
m->gen_name, m->val);
|
m->gen_name, m->val);
|
||||||
|
|
||||||
if (tag == -1)
|
if (tag == -1)
|
||||||
tag = m->val;
|
tag = m->val;
|
||||||
}
|
}
|
||||||
fprintf (codefile, "\t0;\n"
|
fprintf (codefile, "return r;\n"
|
||||||
"}\n\n");
|
"}\n\n");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user