projects
/
ulas
/
.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
6b3114a
)
WIP: symbols
author
Lukas Krickl
<lukas@krickl.dev>
Thu, 30 Nov 2023 06:05:53 +0000
(07:05 +0100)
committer
Lukas Krickl
<lukas@krickl.dev>
Thu, 30 Nov 2023 06:05:53 +0000
(07:05 +0100)
src/ulas.c
patch
|
blob
|
history
diff --git
a/src/ulas.c
b/src/ulas.c
index d149d5ca1cef5a5615b78e04d14b3f3554a6381f..225ac2e198b6b64da10d3bbb737fb1db02facaab 100644
(file)
--- a/
src/ulas.c
+++ b/
src/ulas.c
@@
-208,7
+208,13
@@
int ulas_isname(const char *tok, unsigned long n) {
}
struct ulas_tok *ulas_symbolresolve(const char *name, int *rc) {
- // TODO: implement
+ for (int i = 0; i < ulas.syms.len; i++) {
+ struct ulas_sym *sym = &ulas.syms.buf[i];
+ // when scope is the same as the current one, or scope 0 (global)
+ if ((sym->scope & ulas.scope) == 0 && strcmp(name, sym->name) == 0) {
+ return &sym->tok;
+ }
+ }
return NULL;
}