codea: codegeruest wird generiert :)
[uebersetzerbau-ss10.git] / codea / symtable.c
index 850c1b08388b9252a5dac9f54ee674c0f256bf11..a889a1eedc634b24a1747f65b7ff5838a49c315a 100755 (executable)
@@ -3,7 +3,9 @@
 #include <stdio.h>
 #include "symtable.h"
 
+#if 0
 #define DD
+#endif
 
 struct symbol *tab_new(void)
 {
@@ -68,7 +70,7 @@ struct symbol *tab_lookup(struct symbol *tab, char *ident, short type)
        }
 
        do {
-               if((elm->type == type) && (strcmp(elm->ident, ident) == 0)) {
+               if((elm->type & type) && (strcmp(elm->ident, ident) == 0)) {
                        return elm;
                }
                elm = elm->next;
@@ -123,7 +125,7 @@ void check(struct symbol *tab, char *ident, short type)
        printf("check: tab(%08X), ident(%s), type(%i), elm(%08X)\n", tab, ident, type, elm);
 #endif
 
-       if(type == S_VAR) {
+       if(type & (S_VAR | S_PARM)) {
                elm = tab_lookup(tab, ident, type);
                if(elm != SYMNULL) {
                        return;