Subject | Hash | Author | Date (UTC) |
---|---|---|---|
Undefined variables are not suggested for other undefined variables. | c5561c56dde18bbcf1d05bdec7b50804757c5ef8 | lep | 2015-02-08 15:39:10 |
Also changed gNone to gAny in else and elesif cases. | 485e75aaa14eb8ae10058305f7b75c1abd19eb82 | lep | 2015-02-06 15:20:15 |
Changed statement default return type from gNone to gAny. | 7a054ad7b62d77ae4a17ac97d913a19675dad111 | lep | 2015-02-06 15:12:31 |
Propagate returncheck through statements. | b8977b07e11f8fd335851e3a2d69cb473492f85b | lep | 2015-02-06 15:07:36 |
Small changes. Removed some unused symbols. | 83c8b2b0e6811380bddf6e92e3b2f843370d5e05 | lep | 2015-02-05 12:43:24 |
Only put locals into the initialized table. | db20d22434506716774fa4e8577f98073f17d6c2 | lep | 2015-02-04 11:57:00 |
Changed min function to min makro. | b5b6c824896935232743633ae57d060e5c6a046f | lep | 2015-02-04 11:33:14 |
Rewrote the hashtable. | 55c0f9ae7d284df88c48e7c2ac1c547cda1d802a | lep | 2015-02-04 11:24:53 |
Fixed some memory violations. | 26a99d799804d8154c4ee1aa0850cdaad909d1ae | lep | 2015-02-03 23:27:32 |
Reverted smth. | dbd5c217795cf5cd014ed7370655e62591d4d0fe | lep | 2015-02-03 22:12:49 |
Changed sprintf to snprintf. | 02d6efe2aed9186b2e6189b36a5fa50d2e0c2221 | lep | 2015-02-03 21:33:05 |
Wrapped typenode member accesses in getTypePtr. | 372c1f9da68a65de9e14dff3881e1758d5e7114b | lep | 2015-02-03 21:05:11 |
Added ifdefs for memalign functionality. | f005f5e8067994ebd76265e3289e6ab67283b96f | lep | 2015-02-03 20:06:20 |
Missing-return check in elseifs should work now. | 4274d6166e2c92a4591c1e46a0d71f1579a57c7d | lep | 2015-02-03 19:35:39 |
Missing-return checks also checks elseifs. | 889122b0fb788663c728127520d0e7124c2a040c | lep | 2015-02-03 15:18:12 |
Fixed some more warnings. | a5ae36b5299ac419a91592b60b8fcb1dfd8f4374 | lep | 2015-02-03 13:24:56 |
Added early exit to editdistance function. | 82e8d024392d357d56c833c6b7f7632ffd6830a8 | lep | 2015-02-02 16:13:40 |
Unidentified variables are now marked as initialized. | f3ef715b90782bc22fbdd29e1c16d7c917f407a9 | lep | 2015-02-02 13:56:00 |
Fixed bug in editdistance. | a786775b057fc5795db1b2b106b7b9e3c1df6c4c | lep | 2015-02-02 13:41:15 |
Added basic uninitialized variable check for locals. | c8222a6f68e44a46624c1f9ee781f590522f45f6 | lep | 2015-02-02 12:41:25 |
File | Lines added | Lines deleted |
---|---|---|
misc.c | 9 | 3 |
File misc.c changed (mode: 100644) (index 72af1e0..c28bbbe) | |||
... | ... | void getsuggestions(const char *name, char *buff, int buffsize, int nTables, ... | |
186 | 186 | int x; | int x; |
187 | 187 | for(x = 0; x != ht->size; x++){ | for(x = 0; x != ht->size; x++){ |
188 | 188 | if(ht->bucket[x].name){ | if(ht->bucket[x].name){ |
189 | const struct typeandname *tan = ht->bucket[x].val; | ||
190 | if(typeeq(tan->ty, gAny)){ | ||
191 | continue; | ||
192 | } | ||
193 | |||
189 | 194 | int dist = editdistance(ht->bucket[x].name, name, cutoff); | int dist = editdistance(ht->bucket[x].name, name, cutoff); |
190 | 195 | if(dist <= cutoff){ | if(dist <= cutoff){ |
191 | 196 | count++; | count++; |
... | ... | const struct typeandname *getVariable(const char *varname) | |
240 | 245 | getsuggestions(varname, ebuf, 1024, 3, &locals, ¶ms, &globals); | getsuggestions(varname, ebuf, 1024, 3, &locals, ¶ms, &globals); |
241 | 246 | yyerrorline(2, islinebreak ? lineno - 1 : lineno, ebuf); | yyerrorline(2, islinebreak ? lineno - 1 : lineno, ebuf); |
242 | 247 | // Store it as unidentified variable | // Store it as unidentified variable |
243 | put(curtab, varname, newtypeandname(gAny, varname)); | ||
244 | if(infunction && lookup(curtab, varname) && !lookup(&initialized, varname)){ | ||
248 | const struct typeandname *newtan = newtypeandname(gAny, varname); | ||
249 | put(curtab, varname, newtan); | ||
250 | if(infunction && !lookup(&initialized, varname)){ | ||
245 | 251 | put(&initialized, varname, (void*)1); | put(&initialized, varname, (void*)1); |
246 | 252 | } | } |
247 | return getVariable(varname); | ||
253 | return newtan; | ||
248 | 254 | } | } |
249 | 255 | ||
250 | 256 | void validateGlobalAssignment(const char *varname) { | void validateGlobalAssignment(const char *varname) { |