Changelog
Top of page = most recent.
1.0.0
Added
- Support for structure types
- Support for function prototypes
Changed
- The standard version of the compiler is now the self-compiled version
- All pointer types are now compatible
Removed
- Floating point types (for now)
Docs changes
- All pages, changed to be correct with the new compiler.
1.0.0-alpha.30
Added
- Support for compiling to
.dll
files. - Support for exporting functions through the
export
keyword (which is explained on the syntax page)
Changed
- Lots of operations to use slightly bigger operands, which are incredibly easier to read.
- All operations but function calls and register-stack dumps to not use the actual stack (which should increase speed).
Fixed
- Having identifiers named with the same names as operators (like
i32 Times := 0
) being converted into aTokens.OPERATOR
token (and not parsing correctly). - Both types of comments not working, not
//
and/* whatever */
should both work fine.
Docs changes
- Changed how to use it to not mention
Main.exe
, which has been removed since I can never remember to update it. - Added
export
to the full syntax page - Added a list of features on the new feature list page
1.0.0-alpha.29
Added
- Pointer-pointer types, allowing things like
i64**
orvoid*******************
. (Maybe don't use that second one though) - An array-access syntax for pointers which scales the index for you, so
ArgV[Index]
would be equal to*(ArgV + (8 * Index))
andArrayOfI16s[Index]
would be equal to*(ArrayOfI16s + (2 * Index))
Changed
- The
ArgV
parameter toMain
to be of the typei16**
. - The version number
- Binary expressions with the operators
||
or&&
to result ini8
typed values. - The
String
module to use the array access syntax when possible. - The example programs to use the new
ArgV
type, and to use the array access syntax.
Fixed
- Programs with 0 global variables generating broken output files.
- Most error messages not have any source code shown.
- Some error messages having the wrong code/not enough code highlighted.
*=
Only working with some types.- Modules which
Import
each other crashing the compiler. - Regular AHK exceptions causing the compiler to print
"Fatal error, bailing out."
and exit without any context.
Docs Changes
- Edited Basic Syntax to remove the mention of not having pointer-pointer types.
- Added an explanation of array accesses on the basic syntax page.
- Added the syntax for an array access on the full syntax page.
- Added an explanation of pointer-pointer types on the full syntax page.
- Added this page to act as a changelog
1.0.0-alpha.28 (And lower)
None, the change log is new as of alpha.29
.