changeset 611:e761dfa47ed4

*** empty log message ***
author kono
date Sun, 09 Apr 2006 21:53:42 +0900
parents 3ce0fd61eeae
children 26daeeef30a0
files Changes mc-parse.c
diffstat 2 files changed, 16 insertions(+), 2 deletions(-) [+]
line wrap: on
line diff
--- a/Changes	Wed Mar 29 00:02:23 2006 +0900
+++ b/Changes	Sun Apr 09 21:53:42 2006 +0900
@@ -8706,3 +8706,11 @@
 
 C_FUNCTION の get_name  を見た後、nptr->dsp を設定するべきか?
 
+    *cheap->ptr = 0;
+    cheap = increment_cheap(cheap,&name);
+    i++;
+    nptr = name_space_search(hash_search(name,&scheap,i,hash,DEF),STRING);
+    // if we already have this, hash_search will reset cheap
+    nptr->dsp = i;
+
+再利用を考えると、これじゃないか? (また、時間があったら、直そう...)
--- a/mc-parse.c	Wed Mar 29 00:02:23 2006 +0900
+++ b/mc-parse.c	Sun Apr 09 21:53:42 2006 +0900
@@ -1074,12 +1074,18 @@
 	    getsym(0);
 	    t=LONGLONG;
 	    if (sym==INT) getsym(0);
-	    else if (sym==UNSIGNED) { t=ULONGLONG; getsym(0); break; }
+	    else if (sym==UNSIGNED) { 
+		if(getsym(0)==INT) getsym(0);
+		t=ULONGLONG; break; 
+	    }
 	} else if(sym==DOUBLE) {
 	    getsym(0);
 	    t=DOUBLE;
 	} else if(sym==INT) { getsym(0);
-	} else if(sym==UNSIGNED) { t=UNSIGNED; getsym(0); }
+	} else if(sym==UNSIGNED) { 
+	    if(getsym(0)==INT) getsym(0);
+	    t=UNSIGNED; 
+	}
 	break;
     case TYPEOF:
 	getsym(0);