Commit graph

193 commits

Author SHA1 Message Date
Jonathan Müller
6a3baa9974 Ignore more type kinds 2018-10-25 21:49:12 +02:00
Jonathan Müller
a4c64dbc8d Implement a search for the clang binary 2018-09-24 16:28:16 +02:00
Jonathan Müller
c26d230d33 [breaking] Drop support for clang 3.9.1 2018-09-24 15:59:12 +02:00
Jonathan Müller
9f18b7f4d8 Update clang-format 2018-09-20 19:57:03 +02:00
Jonathan Müller
56d4964b61 [breaking] Turn macro parameters into propert entities 2018-06-20 09:54:16 +02:00
Manu Sánchez
c341ae01f1 Change "odd flag" criteria on preprocessor command flags (#57)
The assert on libclang/preprocessor.cpp:263 fails with common flags
such as "-g", because the assertion says valid flags must have at least
three characters.

I've changed that condition to accept two char flags like -g
2018-06-06 13:39:00 +02:00
Jonathan Müller
e0e78c0a3e Fix spaces in include paths
Fixes #56.
2018-06-05 20:56:25 +02:00
Jonathan Müller
2d8be149aa Fix filename of diagnostics
See #37.
2018-04-02 16:43:32 +02:00
Jonathan Müller
19f237043b Handle attribute names that are keywords 2018-03-28 17:16:39 +02:00
Rokas Kupstys
2122dad8b0 Expose __attribute__ and __declspec attributes. Closes #50. 2018-03-28 17:16:39 +02:00
Jonathan Müller
045a33fbd6 Add a proper workaround for #46 2018-03-28 10:40:57 +02:00
Jonathan Müller
6cb99d4516 Revert "Add (crude) workaround for _DEBUGGER_STEP_INTO #line in MSVC"
This reverts commit 2004780ea6.
2018-03-26 20:49:16 +02:00
Jonathan Müller
61a2a22542 Add option to change preprocessor -CC to -C
See #37.
2018-03-20 16:12:23 +01:00
Jonathan Müller
2004780ea6 Add (crude) workaround for _DEBUGGER_STEP_INTO #line in MSVC
Fixes #46.
2018-03-20 15:40:39 +01:00
Jonathan Müller
4b73c44133 Fix issue with array function arguments
Fixes #47.
2018-03-20 15:19:41 +01:00
Jonathan Müller
003207361a Properly handle unnecessary semicolons
Now fixes #45.
2018-03-19 21:12:40 +01:00
Jonathan Müller
300854a6b0 Remove empty token check
Lead to an issue with semicolon at end of file, fixes #45.
2018-03-14 16:30:09 +01:00
Jonathan Müller
0caa3bdb15 Add missing case for CXType_Float16 2018-03-12 11:49:09 +01:00
Jonathan Müller
670551faa5 Fix include issue on pre-clang 4.0.0 2018-03-12 11:44:04 +01:00
Jonathan Müller
a91746c145 Improve variadic token workaround 2018-03-12 11:26:56 +01:00
Jonathan Müller
c2b86d1cad Fix full path of includes 2018-02-21 16:25:46 +01:00
Jonathan Müller
2ced972b9f Add missing missing file check 2018-02-19 19:24:54 +01:00
Jonathan Müller
cc5127979b Fix external macro use when fast_preprocessing=false
Forget to add standard library includes...

Fixes #39.
2018-02-17 16:06:12 +01:00
Jonathan Müller
b36a4a84b8 Properly detect include guard macros when fast preprocessing
Fixes #35.
2018-02-17 13:01:34 +01:00
Jonathan Müller
c7b13d89bc Fix CI errors 2018-02-01 18:52:37 +01:00
Jonathan Müller
8c426ac115 Add fast preprocessing mode 2018-02-01 18:27:41 +01:00
Jonathan Müller
59c7ea31e1 Handle string literals in macro definition 2018-02-01 09:24:32 +01:00
Jonathan Müller
be0390446d Ignore macro expansion cursors 2018-02-01 09:24:32 +01:00
Jonathan Müller
98e709fdfc Fix return type having same name as function 2018-02-01 09:24:30 +01:00
Jonathan Müller
ca5623b43d Add file name to error output 2018-02-01 09:22:34 +01:00
Jonathan Müller
4c78c69da0 Update copyright year 2018-01-26 08:39:09 +01:00
Jonathan Müller
bca488c3d7 Improve fix #32 2018-01-25 21:57:07 +01:00
Zsolt Erhardt
ca2fae08a2 Bugfix/escaped character parsing (#32)
So as it turns out there's a nasty little piece of code in rapidjson's
source which breaks the preprocessor and will leave things a little bit
weird.

The test "preprocessor_parses_escaped_character" should prove
its validity.
2018-01-22 11:18:38 +01:00
Jonathan Müller
1e5271a4b7 Fix and improve C comment indent heuristic 2018-01-15 09:08:48 +01:00
Jonathan Müller
3e8b2b429c Better handling of include refs 2018-01-11 21:22:28 +01:00
Jonathan Müller
1e50e12742 Fix get_instantiation_template() so that it returns the primary template 2018-01-09 21:03:00 +01:00
Jonathan Müller
755f251da9 Steal comment of nested namespace 2017-12-22 10:54:37 +01:00
topisani
037619964f Comments and (failing) tests 2017-12-22 04:09:48 +01:00
topisani
76fb7dee43 Parse C++17 nested namespace declarations
This is maybe not the most correct way to do it, but i dont think it misparses
any valid code.
2017-12-20 18:15:31 +01:00
Jonathan Müller
9df3b39e1e Fix comment matching for includes not on top of the file
See foonathan/standardese#83.
2017-12-13 20:49:44 +01:00
Jonathan Müller
2b3ddf360b Fix member variable type which is typedef in same class
Type spelling included all scopes. See foonathan/standardese#82.
2017-12-07 22:04:51 +01:00
Jonathan Müller
b2121b19c2 Add indentation C comment heuristics
See foonathan/standardese#84.
2017-12-06 19:34:36 +01:00
Jonathan Müller
ced136a3a4 Fix comma in attributes on enum value 2017-11-10 13:07:22 +01:00
Jonathan Müller
6f128da87f Add default constructor to libclang_parser 2017-10-31 15:55:06 +01:00
Jonathan Müller
0875721452 Handle parsing of extern templates 2017-10-30 22:25:12 +01:00
Jonathan Müller
da3d515d09 Fix issue with GCC attribute syntax 2017-10-30 18:52:11 +01:00
Jonathan Müller
478fd4e90c Fix compilation errors 2017-10-30 10:02:00 +01:00
Jonathan Müller
756fe351f1 Implement alignas parsing 2017-10-29 20:53:30 +01:00
Jonathan Müller
ccb2aaa189 Implement attribute parsing 2017-10-29 19:42:16 +01:00
Jonathan Müller
1572920650 Add function to tokenize strings 2017-10-19 19:02:27 +02:00