summaryrefslogtreecommitdiff
path: root/Userland/Libraries/LibCpp/Preprocessor.cpp
AgeCommit message (Collapse)Author
2021-05-22LibCpp: Add option in Preprocessor to keep #include's in processed textItamar
2021-05-22LibCpp: Make Preprocessor::handle_preprocessor_line return keywordItamar
This also moves most of the logic that was in handle_preprocessor_line into handle_preprocessor_keyword.
2021-04-22Everything: Move to SPDX license identifiers in all files.Brian Gianforcaro
SPDX License Identifiers are a more compact / standardized way of representing file license information. See: https://spdx.dev/resources/use/#identifiers This was done with the `ambr` search and replace tool. ambr --no-parent-ignore --key-from-file --rep-from-file key.txt rep.txt *
2021-03-18LibCpp: Add preprocessor option to ignore unsupported keywordsVyacheslav Pukhanov
Under some circumstances we need to ignore unsupported preprocessor keywords instead of crashing the processing, for example during live parsing in HackStudio.
2021-03-13LanguageServers/Cpp: Support jumping to declaration of preprocessorItamar
.. definitions.
2021-03-13LanguageServers/Cpp: Complete Preprocessor definitionsItamar
Preprocessor definitions now appear in the AutoComplete suggestions box as well as in the Locator.
2021-03-13LibCpp: Replace defined preprocessor values when parsingItamar
2021-03-06LibCpp: Don't crash on an empty '#' lineItamar
Closes #5634
2021-02-26LibCpp: Don't fail when encountering #elif statementsItamar
However, we currently always treat the expression in #elif as true.
2021-02-23Everywhere: Rename ASSERT => VERIFYAndreas Kling
(...and ASSERT_NOT_REACHED => VERIFY_NOT_REACHED) Since all of these checks are done in release builds as well, let's rename them to VERIFY to prevent confusion, as everyone is used to assertions being compiled out in release. We can introduce a new ASSERT macro that is specifically for debug checks, but I'm doing this wholesale conversion first since we've accumulated thousands of these already, and it's not immediately obvious which ones are suitable for ASSERT.
2021-02-08LibCpp: Start working on a C preprocessorItamar
We currently handle basic #define statements as well as ifdef and else branches.