12d22ff94SChristoph Malloncparser 1.22.1 (2016-01-23)
2f6800f19SMatthias Braun---------------------------
3f6800f19SMatthias Braun
4f6800f19SMatthias Braun* Add make install target
5ffca2232SChristoph Mallon* Stub support for `-Oz`
6978fe1e6SChristoph Mallon* Accept `__attribute` as alias for `__attribute__`
757512586SChristoph Mallon* Update online help
8ebb397c0SChristoph Mallon* Support `--sysroot` and `-isysroot`
933e3b3f1SChristoph Mallon* Enable `-Wunreachable-code`, `-Wunused-function`, `-Wunused-label`, `-Wunused-parameter` and `-Wunused-variable` by default
10a3f9c122SChristoph Mallon* Rename `-Wsystem` to `-Wsystem-headers` for gcc/clang compatibility
11555b1ca1SChristoph Mallon* Support `-Wcpp`
122d22ff94SChristoph Mallon* Stub support for `#ident` and `#sccs`
13ecd90da2SChristoph Mallon* Add switch `-Wreturn-local-addr` and handle compound literals
14e1605992SChristoph Mallon* Make it an error to have a computed goto in a function without address-taken label
15a4a2d5ddSChristoph Mallon* Add option `-Wdeclaration-after-label`
16765e4b01SChristoph Mallon* Add option `-Wlabel-at-end-of-block`
17664fa9e8SChristoph Mallon* Split `-Wparentheses` into `Wparentheses-assignment`, `Wparentheses-comparison`, `Wparentheses-else`, `Wparentheses-logical` and `Wparentheses-shift`
185a8c7700SChristoph Mallon* Add target `mips`
19fc851301SChristoph Mallon* Add target `riscv32`
20e25966c0SChristoph Mallon* Accept asm qualifiers in arbitrary order
214cc424d6SChristoph Mallon* Accept (and ignore) the asm qualifier `inline`
22cf3a98dcSChristoph Mallon* The target triple can also be set by prefixing the executable name, e.g. `x86_64-unknown-elf-cparser`
233ec27c3cSChristoph Mallon* Support `asm goto`; even allow output constraints, which gcc and clang do not
2462c6fdafSChristoph Mallon* Bugfixes
25f6800f19SMatthias Braun
26ab5a4f8cSChristoph Malloncparser 1.22.0 (2015-12-31)
27f4824232SMatthias Braun---------------------------
28f4824232SMatthias Braun
29f4824232SMatthias Braun* Bump version number to somewhat match libfirm
30f4824232SMatthias Braun* Color diagnostics
31f4824232SMatthias Braun* Full preprocessor support
32f4824232SMatthias Braun* Support C99 complex numbers
33f4824232SMatthias Braun* Improved commandline option handling emulating even more gcc options
346c4706e0SMatthias Braun* Create libcparser to facilitate the creation of external tools
35f4824232SMatthias Braun* Bugfixes
36ab5a4f8cSChristoph Mallon* Improved diagnostics
37ab5a4f8cSChristoph Mallon* Support -Wa, -Xlinker, -Xpreprocessor, -Xassembler
38ab5a4f8cSChristoph Mallon* Support -Wsystem
39ab5a4f8cSChristoph Mallon* Partial support for C11 features
40ab5a4f8cSChristoph Mallon* Support -pedantic and -pedantic-errors
41e46d2423SMatthias Braun* Support `__attribute__((alias()))`
42ab5a4f8cSChristoph Mallon* Support -Wnot-compound-assign
43ab5a4f8cSChristoph Mallon* Support -Wcompat-option
44ab5a4f8cSChristoph Mallon* Support -Wunknown-warning-option
45ab5a4f8cSChristoph Mallon* Select the base type for enums like gcc
46ab5a4f8cSChristoph Mallon* Support -no-integrated-cpp
47e46d2423SMatthias Braun* Support -Wcomment (warn about `/*` within `/**/` comments)
48ab5a4f8cSChristoph Mallon* Use integrated preprocessor by default
49ab5a4f8cSChristoph Mallon* Improve auto-detection of host machine triple
50ab5a4f8cSChristoph Mallon* Support -Wunused-option
51ab5a4f8cSChristoph Mallon* Support -Wenum-conversion
52ab5a4f8cSChristoph Mallon* Improve -Wsign-compare
53ab5a4f8cSChristoph Mallon* Support -Wdistinct-pointer-types
54ab5a4f8cSChristoph Mallon* Make semantic checks more strict
55ab5a4f8cSChristoph Mallon* Add mechanism to optimize well-known libc functions
56ab5a4f8cSChristoph Mallon* Support -dumpmachine
57ab5a4f8cSChristoph Mallon* Support -Wpointer-sign
58ab5a4f8cSChristoph Mallon* Stub support for -fasynchronous-unwind-tables, -funwind-tables, -frounding-math
59ab5a4f8cSChristoph Mallon* Support -fexcess-precision
60ab5a4f8cSChristoph Mallon* Support -nostdlib
61ab5a4f8cSChristoph Mallon* Support Makefile dependency generation (-M, -MD, ...)
62ab5a4f8cSChristoph Mallon* Support -fno-verbose-asm (-fverbose-asm is default)
63ab5a4f8cSChristoph Mallon* Improve diagnostics for disabled language extensions
64e46d2423SMatthias Braun* Support setting the mantissa with `__builtin_nan`
65e46d2423SMatthias Braun* Recognize, but reject, MSC asm statements, i.e. `__asm { ... }`
66e46d2423SMatthias Braun* Support attribute for custom printf-like format checks, e.g. `int my_printf(char const* fmt, ...) __attribute__((custom_format(1, "#0", "%": void, "d": int, "ld": long, "s": char const*));`
67ab5a4f8cSChristoph Mallon* Show an explanation for each warning switch when printing the help
68ab5a4f8cSChristoph Mallon* Improve PIC commandline options
69ab5a4f8cSChristoph Mallon* Support -f[no-]builtin
70f4824232SMatthias Braun
71f3227502SMatthias Brauncparser 0.9.14 (2012-11-21)
72f3227502SMatthias Braun---------------------------
73f3227502SMatthias Braun
74f3227502SMatthias Braun* Adapt to libfirm-1.21.0
75f3227502SMatthias Braun* Improved error recovery
76f3227502SMatthias Braun* Improved firm graph generation (faster/smaller graphs)
77f3227502SMatthias Braun* Implement U,u and u8 strings
78f3227502SMatthias Braun* Preliminary preprocessor (we still use system cpp by default, as some macro
79f3227502SMatthias Braun  expansion corner cases are still buggy and prevent us from compiling glibc
80f3227502SMatthias Braun  headers)
81f3227502SMatthias Braun* More gcc extensions: binary constants, __leaf__ attribute
82f3227502SMatthias Braun
83f817440bSMatthias Brauncparser 0.9.13 (2011-12-07)
84e7ab3b56SMatthias Braun---------------------------
85e7ab3b56SMatthias Braun
86e7ab3b56SMatthias Braun* Adapt to libfirm-1.20.0
87e7ab3b56SMatthias Braun* Implement --help
88e7ab3b56SMatthias Braun* More work on preprocessor (still not finished though)
89e7ab3b56SMatthias Braun* Refactoring work so others can reuse input, optimization order logic
90e7ab3b56SMatthias Braun* Columns in source positions (but external preprocessor doesn't preserve all spaces)
91e7ab3b56SMatthias Braun* Improvements to gnu builtins/attributes
92e7ab3b56SMatthias Braun* Bugfixes (we did alot of csmith testing)
93e7ab3b56SMatthias Braun
94e7ab3b56SMatthias Brauncparser 0.9.12 (2011-03-15)
957169ddacSMatthias Braun---------------------------
967169ddacSMatthias Braun
9742c28f05SMatthias Braun* Adapt to libfirm-1.19.0
9842c28f05SMatthias Braun* Introduce -mtarget (and -mtriple for llvm compatibility) for conventient
9942c28f05SMatthias Braun  cross-compilation
10042c28f05SMatthias Braun* Fix big-endian struct layouting
10142c28f05SMatthias Braun* Bugfixes
10242c28f05SMatthias Braun
1037169ddacSMatthias Brauncparser 0.9.11 (2009-05-16)
1047169ddacSMatthias Braun---------------------------
1057169ddacSMatthias Braun
1067bbeb016SMatthias Braun* add missing NEWS entries
1077bbeb016SMatthias Braun* fix crash when known C library functions had the wrong number of arguments
1087bbeb016SMatthias Braun
1097169ddacSMatthias Brauncparser 0.9.10 (2009-04-15)
1107169ddacSMatthias Braun---------------------------
1117169ddacSMatthias Braun
1127bbeb016SMatthias Braun* bugfixes
1137bbeb016SMatthias Braun* adapt to libfirm-1.18.0
1147bbeb016SMatthias Braun
1157169ddacSMatthias Brauncparser 0.9.9 (2009-05-15)
1167169ddacSMatthias Braun--------------------------
1177169ddacSMatthias Braun
118867e9811SMatthias Braun* bugfixes
119867e9811SMatthias Braun* extend and improve support for attributes
120867e9811SMatthias Braun* adapat to latest libfirm
121867e9811SMatthias Braun
1227169ddacSMatthias Brauncparser 0.9.8 (2009-01-28)
1237169ddacSMatthias Braun--------------------------
1247923d6beSChristoph Mallon* several bugfixes
1257923d6beSChristoph Mallon* add/correct semantic checks
1267923d6beSChristoph Mallon* improve error recovery
1277923d6beSChristoph Mallon* support more GCC extensions
1287923d6beSChristoph Mallon* add/improve/correct warnings
1297923d6beSChristoph Mallon
1307169ddacSMatthias Brauncparser 0.9.7 (2008-12-01)
1317169ddacSMatthias Braun--------------------------
1327169ddacSMatthias Braun
133c26d8567SChristoph Mallon* several bugfixes
134c26d8567SChristoph Mallon* add/correct semantic checks
135c26d8567SChristoph Mallon* improved error recovery
1365c73f87eSChristoph Mallon* support more GCC extensions
1375c73f87eSChristoph Mallon* support more GCC switches
1385c73f87eSChristoph Mallon* add a manpage
139c26d8567SChristoph Mallon
1407169ddacSMatthias Brauncparser 0.9.6 (2008-11-22)
1417169ddacSMatthias Braun--------------------------
1427169ddacSMatthias Braun
143c26d8567SChristoph Mallon* lots of bugfixes
144c26d8567SChristoph Mallon* add/correct semantic checks
145c26d8567SChristoph Mallon* more/improved warnings
146c26d8567SChristoph Mallon* internal cleanups (introduce entity_t types)
147c26d8567SChristoph Mallon* support more gnu extensions
148c26d8567SChristoph Mallon* improved error recovery
149c26d8567SChristoph Mallon* support more switches for gcc compatibility
150c26d8567SChristoph Mallon* support for libc builtins
151c26d8567SChristoph Mallon
1527169ddacSMatthias Brauncparser 0.9.5 (2008-07-31)
1537169ddacSMatthias Braun--------------------------
15497c86772SMatthias Braun
155c8d5e781SMatthias Braun* lots of bugfixes
15697c86772SMatthias Braun* sync with latest libfirm
15797c86772SMatthias Braun* improve error handling (more graceful continue in case of an error)
15897c86772SMatthias Braun* compatibility fixes for old C stuff (=> SPECint2000 works now)
159c8d5e781SMatthias Braun* improved commandline, more gcc compatibility flags
160c8d5e781SMatthias Braun* support more gnu extensions
161c8d5e781SMatthias Braun* parse all gnu extensions
16297c86772SMatthias Braun
1637169ddacSMatthias Brauncparser 0.9 (2008-02-08)
1647169ddacSMatthias Braun------------------------
16580e91ad2SMatthias Braun
16680e91ad2SMatthias Braun* initial release
16780e91ad2SMatthias Braun* cparser is able to bootstrap itself