rdb
12a188b116
cppparser: Allow move semantics for CPPToken
...
This should make it a bit more efficient to move tokens around
2024-03-29 15:00:39 +01:00
rdb
6e81fb5cdf
cppparser: Support `__restrict` and `__restrict__` keywords
...
To compile C code, you can do `-Drestrict=__restrict`
2024-03-29 11:36:14 +01:00
rdb
e16cb8af98
cppparser: Add special __builtin_va_list type
2024-03-29 11:34:56 +01:00
rdb
bddb7cb262
cppparser: fix escaping of string literals in preprocessor mode
...
[skip ci]
2024-03-28 22:17:49 +01:00
rdb
fb68f82c5b
cppparser: Add preprocessor option (-E) to parse_file
...
This makes it easier to test the behaviour of the preprocessor
2024-03-28 17:15:24 +01:00
rdb
a769808af0
cppparser: Add missing keywords to CPPToken::output()
2024-03-28 17:01:47 +01:00
Sam Edwards
b2bfb31114
general: Remove `using std::*` from headers
...
Also remove most `using namespace std;` statements. The only one that remains is in py_panda.h.
Closes #350
Closes #335
2018-06-14 16:04:49 +02:00
Sam Edwards
e2b4353800
general: Replace NULL (and 0 as pointer) with C++11 nullptr
...
Exceptions to this replacement are:
- .c files
- Headers included by a .c file
- stb_image.h
- dr_flac.h
- Strings
- Comments
2018-06-03 16:35:13 -06:00
rdb
e2771d39a9
cppparser: support for various C++11/C++14/C++17 features:
...
- decltype(auto)
- attributes (ie. [[deprecated]]), incl. with C++17 "using"
- extern template class (parses)
- sizeof struct members
- aggregate initialization
- initializers in capture lists
- alignas (parses)
2017-01-15 15:39:34 +01:00
rdb
8381118a97
Assorted tweaks and compile warning fixes
2016-07-14 12:54:39 +02:00
tobspr
0fcfb8e372
New file headers, new comment style
2016-02-17 17:47:48 +01:00
rdb
caa03c53dd
Interrogate cppparser improvements, C++11/14/17 additions:
...
* Support trailing return type.
* Ignore C++14 digit separators.
* Parse C++14 binary number representations.
* Support "using"-style type aliases.
* Support decltype and auto with "new".
* Remove silly "long float" and "long long float".
* Support default visibility with class inheritance.
* Remove -longlong hack since C++11 supports long long natively.
* Support unary plus operator.
* Preserve bitfield definitions.
* Support constructor inits using braces.
* Support override/final specifiers.
* Ignore [[attributes]] in certain cases
* Add support for typeid() in expressions
* Parse (but ignore) lambda expressions
* Differentiate between casts, add const_cast/reinterpret_cast
* Support thread_local variables.
2016-02-16 01:18:51 +01:00
Sam Edwards
3b667a83ed
general: Fix several missing includes.
2015-11-07 20:05:17 -08:00
rdb
b65ad853fe
Support C++11/14 features: nullptr, decltype, unicode literals, custom literals, alignof
2015-10-12 23:32:50 +02:00
rdb
e327c7e978
Vastly improve quality of Interrogate error messages, also fix erroneous location indications
...
This change also causes Interrogate to safely ignore "register" keywords in function parameters
2015-10-10 15:15:22 +02:00
rdb
c178aba639
Add property support to interrogate (using MAKE_PROPERTY or using published members)
2014-09-19 15:23:52 +00:00
David Rose
fb9c56432a
we are now using the modified BSD license
2008-05-28 18:37:20 +00:00
David Rose
03c35a63ff
CHAR -> CHAR_TOK (avoid conflict with Windows SDK)
2006-04-06 17:51:24 +00:00
David Rose
843c0331ae
update license, change remaining local #includes to use quotation marks
2004-02-13 19:27:33 +00:00
David Rose
df88308629
fix for bison greater than 1.35
2003-01-19 18:59:18 +00:00
David Rose
2f4e207edb
Update copyright header
2001-05-25 21:27:38 +00:00
David Rose
fcb24f02ef
remove tab characters
2001-05-25 15:56:49 +00:00
David Rose
7a78284129
Initial revision
2000-10-04 00:15:23 +00:00