Age | Commit message (Collapse) | Author | Files | Lines |
|
Combining arithmetric (add) and bitwise (xor) mixing seems to give
better result than either.
With the new prehash function, we find a valid hash much quicker.
|
|
Declarations that are not at the head is C99 behaviour, but it's
rather pointless for this little piece of code. Fix to work with
older compilers.
|
|
Speed up pptok.c by just doing |= 0x20 instead of calling tolower() for
every character during prehashing. This is good enough for our needs,
since we don't have any tokens containing the characters @ [ \ ] _ nor
any high-bit characters (in which case we'd have to worry about multibyte
anyway.)
|
|
We need to fail if we land in a hole in the pp_directives array, since
we have a noncontiguous enum preproc_token now.
|
|
Further automate the production of preprocessor conditionals. Now the
code automatically folds if/elif and the negatives.
|
|
|
|
Automatically generate macros to test for %if and %elif variants, which
are guaranteed to be correct across future changes.
|
|
Use a perfect hash to look up preprocessor directives, and generate
the preprocessor directive list automatically.
|