diff options
author | cinap_lenrek <cinap_lenrek@felloff.net> | 2021-10-17 19:52:28 +0000 |
---|---|---|
committer | cinap_lenrek <cinap_lenrek@felloff.net> | 2021-10-17 19:52:28 +0000 |
commit | 2731ae50d3226381f2151b590f8f4f5c52545e5f (patch) | |
tree | b21360b646120ee182599f48fbcc547faede1732 /sys/src/libaml | |
parent | 31bb950b7016f27ae1e766aafe5bedc605e803cf (diff) |
libaml: resolve refs in ObjectType instruction
The standard states in section 19.5.93:
.... Notice that if this operation is performed
on an obeject reference such as one produced by
the Alias, Index, or RefOf statements, the obect
type of the base object is returned.
Diffstat (limited to 'sys/src/libaml')
-rw-r--r-- | sys/src/libaml/aml.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/sys/src/libaml/aml.c b/sys/src/libaml/aml.c index 966207892..57a0f8e2c 100644 --- a/sys/src/libaml/aml.c +++ b/sys/src/libaml/aml.c @@ -1800,7 +1800,7 @@ evalotype(void) while(r != nil){ switch(TAG(r)){ case 'R': case 'A': case 'L': /* Ref */ - r = ((Ref*)r)->ref; + r = *((Ref*)r)->ptr; continue; case 'N': /* Name */ r = ((Name*)r)->v; |