Matthew Fosdick
Matthew Fosdick
@msftrncs Yeah, the standard specifies that, preprocessor directives are handled after comments are removed, so anything resembling a preprocessor directives inside the block comment is not actually. I think there...
I think if the begin/end for #if only closed with #else and #elseif, and this pattern did not add any scopes, then it should work as expected. The while stack...
Yes, but the more serious issue with that approach is that comments/raw string would cause the rule stack to lose entries. Imagine the following c++ snippet ```c++ #if foo enum...
> It could work, just a pattern would be needed that would consume all patterns that prevent multiline comments and raw-strings: single line comments, single line strings, single line block...
Duplicate of #31, but this one is a bit clearer about the problem. @jeff-hykin I don't believe the following potential solution has been discussed before. 1. `#ifdef` and `#endif` are...
To clarify: - `#if`, `#ifdef` and `#ifndef` do not start a range - `#else` and `#elif` do start a range, which end on a look ahead for `#else`, `#elif` or...
This is caused by the grammar treating any `#define foo (/* snip */)` as a macro function even when it contains invalid characters. It should be easy enough to restrict...
Duplicate of #302. Current focus is on published standards.
Just keyword highlighting, no context awareness, could be added in easily enough. Import as an alternative to` #include` should also be easy enough to add.
Often those are in negative lookbehinds and lookaheads. **`import`**: the `import` keyword needs to be pulled out of the check for `#`, But if the semicolon is required it might...