Closed novusnota closed 2 months ago
To be on the safe side, let's take stdlib.fc
and mathlib.fc
as libraries that are commonly used and see if we can add more function identifiers from those libs into our positive tests to make sure people will be able to FFI with those.
Nice observation! I'd try putting lookaheads &
in front of those ")" so they don't get parsed, but let me try your suggestion first, it should work. UPD: Yeah, it does, clever idea!
The keywords are not allowed and should be excluded too. Basically, contents of https://github.com/ton-blockchain/ton/blob/master/crypto/func/keywords.cpp has to be put in the exceptions list. I'm on it.
UPD2: Order of operators in those inner () alternations really does matter, the ones with bigger prefix shall stand in front of others.
@novusnota So, what's the current status of this PR?
@anton-trunov It's a working and robust solution. The alternative would be to do invalidation of identifiers during syntactic analysis, which enhances the error messages further, but that seems to be a bit out of scope of this PR. Wdyt?
That took a looooooooot of RegEx iterations.
Closes #635
- [ ] I have documented my contribution in Tact Docs: https://github.com/tact-lang/tact-docs/pull/PR-NUMBER