It is worth pointing out that Check Syntax does not see the result of
your reader, it sees the fully-expanded module and performs its analysis
from there. Therefore, it can be useful to use the macro stepper with
macro hiding disabled to inspect the fully-expanded module to make sure
that the information at least appears to be in place.
In the case of your language, I would use the macro stepper to ensure
the following three things are happening:
1. The `sum` identifier appears in binding position in the
fully-expanded program, and it has the appropriate source location
information.
2. The `sum` identifier also appears in use position in the
fully-expanded program, and it has distinct source location
information from the identifier in binding position.
3. Both identifiers are syntax-original?.
If those things are all the case, it’s difficult for me to say much more
without looking at the code itself.
(As an aside, you should probably be providing the first argument of
my-read-syntax as the first argument to `parse` instead of (object-name
in), but I’m not sure if that’s at all related to the issue here.)
> On Feb 13, 2018, at 23:33, Sorawee Porncharoenwase