2013-04-21 10:08:04 +00:00
|
|
|
Release v0.2.9
|
2013-01-09 20:49:28 +00:00
|
|
|
* Preprocessor:
|
|
|
|
- __VA_ARGS__ support
|
2013-04-21 10:08:04 +00:00
|
|
|
_ __VA_ARGS__ indexing
|
2013-01-09 20:49:28 +00:00
|
|
|
- Predefined macros like __DATE__, __TIME__, ...
|
|
|
|
(check the manpage for a full list)
|
|
|
|
- Signed numbers as single token in the
|
|
|
|
- Fixes some issues with #if operations on macros.
|
2013-04-21 10:08:04 +00:00
|
|
|
- Speed improvements
|
2013-01-09 20:49:28 +00:00
|
|
|
* Language:
|
|
|
|
- Untyped `nil` keyword.
|
|
|
|
- Removed the `noreturn` keyword.
|
|
|
|
- Added generic attribute syntax and reintroduced `noreturn`
|
|
|
|
as [[noreturn]].
|
|
|
|
- Added [[deprecated]] and [[deprecated("message")]].
|
|
|
|
- Support for `static` variables in functions.
|
|
|
|
- Support for labeled loops.
|
|
|
|
- UTF-8 Support
|
2013-01-10 18:59:01 +00:00
|
|
|
- enum support: without enum-types
|
|
|
|
(ie no `typedef enum { } foo;`)
|
2013-01-10 20:05:10 +00:00
|
|
|
- Accessing vector components via the dot operator on all
|
|
|
|
expressions. Eg: (3 * v).y
|
2013-01-12 10:11:31 +00:00
|
|
|
- Type restricted variadict parameters:
|
|
|
|
ie: void print(string...);
|
2013-01-12 13:54:11 +00:00
|
|
|
- Accessing varargs from QC via: ...(index, type)
|
2013-04-21 10:08:04 +00:00
|
|
|
- New operators: ** (exponentiation), % (modulo), etc
|
|
|
|
- Enumeration attributes: flag, reverse
|
2013-01-09 20:49:28 +00:00
|
|
|
* Compilation:
|
|
|
|
- Various optimizations and progs-size reductions.
|
|
|
|
- A new spell-checking algorithm tries to hint you at existing
|
|
|
|
variables on error.
|
2013-01-17 09:06:01 +00:00
|
|
|
- Some problems with VM related vector-instructions issues
|
|
|
|
have been solved in both DP and our own executor. A new
|
|
|
|
compatbility option (enabled by default) has been added for
|
|
|
|
now: -flegacy-vector-maths
|
2013-04-21 10:08:04 +00:00
|
|
|
- Compiler intrinsics: __builtin_floor, __builtin_mod,
|
|
|
|
__builtin_exp, __builtin_isnan
|
|
|
|
- Improved memory tracing
|
|
|
|
- Speed improvements
|
|
|
|
* QCVM:
|
2013-01-09 20:49:28 +00:00
|
|
|
- Improved commandline argument handling.
|
|
|
|
- More builtins: sqrt(), normalize()
|
|
|
|
* Commandline:
|
2013-04-21 10:08:04 +00:00
|
|
|
- Nicer memory dumps
|
2013-01-09 20:49:28 +00:00
|
|
|
- Support for making individual warnings an error
|
|
|
|
- via -Werror-<warning>
|
2013-01-11 22:10:41 +00:00
|
|
|
- added --add-info
|
2013-01-09 20:49:28 +00:00
|
|
|
* Testsuite:
|
|
|
|
- Support for QCFLAGS to run tests with several additional
|
|
|
|
flags.
|
2013-04-21 10:08:04 +00:00
|
|
|
- Added support for preprocessor tests
|
|
|
|
- Added preprocessor tests
|
|
|
|
- Added defs.qh (auto included) for qcvm definitions
|
|
|
|
* Syntax Highlighting:
|
|
|
|
- Added various syntax highlighting description files for
|
|
|
|
various text editors / integrated development envirorments,
|
|
|
|
including support for: geany, kate, kwrite, kdevelop, QtCreator,
|
|
|
|
gtksourceview, gedit, sany, nano, jedit
|
|
|
|
* Build:
|
|
|
|
- Build scripts for building debian, archlinux and archbsd
|
|
|
|
packages for x86, and x86_64.
|
|
|
|
- Makefile targets for gource visualization, and render of
|
|
|
|
gource visualization.
|
|
|
|
|
2013-01-09 20:49:28 +00:00
|
|
|
|
|
|
|
2012-12-27 Hotfix v0.2.2
|
|
|
|
* Liferanges
|
|
|
|
* Crashes
|
|
|
|
|
|
|
|
2012-12-23 Hotfix v0.2.1
|
|
|
|
* General bugfixes
|
|
|
|
|
|
|
|
2012-12-23 Release 0.2
|
|
|
|
* Preprocessor:
|
|
|
|
- Added xonotic compatible preprocessor.
|
|
|
|
* Language
|
|
|
|
- Basic xonotic compatibility
|
|
|
|
- Array support
|
|
|
|
- Added fteqcc's string escape sequences.
|
|
|
|
- Support for `noref`.
|
|
|
|
- Support for `goto` with labels like in fteqcc.
|
|
|
|
- `break` and `continue`.
|
|
|
|
- Short circuit logic.
|
|
|
|
- Support for translatable strings via _("str") like in
|
|
|
|
fteqcc.
|
|
|
|
* Compilation
|
|
|
|
- Warnings about uninitialized values
|
|
|
|
|
|
|
|
2012-11-17 Release 0.1
|
|
|
|
* Compiles id1 code
|