0.5
improved error messages
gcc is now expected to be in directory with FPL.exe/FPL.jar in gcc directory
gcc property removed
added const for pointer arguments
getObjectSize added to all interfaces
for loop added
MIN_VALUE and MAX_VALUE constants added to number classes
scientific notation added
number literal can now contain _ to make it more readable
added parse methods to number classes
added static throw to exception classes
NumberFormatException added
+ String.{isEmpty,isBlank,isEmptyOrBlank,getData,contains,isAllocated,endsWith,startsWith,strip,substring}
D number type char added to signify double
NAN,POSITIVE_INFINITY and NEGATIVE_INFINITY fields added to floating point numbers
isNaN method added to floating point numbers
added else and elseif blocks to compile time if
char.isUpper renamed to isUpperCase
char.isLower renamed to isLowerCase
char.toUpper renamed to toUpperCase
char.toLower renamed to toUpperCase
upgraded to jdk 18
tertiary operator added
constructors,destructors and copy constructors can now be one line
final modifier for classes added
one-line constructor can now also invoke all constructor variants not just the once's from parent class using super and this
added super variable to methods
String.get and String.set throw IllegalArgumentException instead of Exception
std.lang.getCStringLen return type changed form int to uint
added std.lang.IllegalStateException
added std.math.ARandom
String.this(uint len) added
exception variable in catch changed to pointer
fileSetBuffer and it's modes removed
copy constructor added to std.collection.ArrayList
interface copy constructor added
default exception handler message changed from "exception happened:(exception message)" to "uncaught exception:(exception message)"
std.lang.String made final
flush method added to std.io.file.FileWriter
std.io.base.DataWriter.writeString renamed to write
function variants can be of different types
builtin functions can now be declared without C error
exceptions are now reported to stderr by default
added uninit to instance variable declaration
added sin, cos, tan, cotan, toRad, toDeg to std.math
expected number now reports the value token
array.get now has to end with ;
fix instance type variable declaration
fix arrays with size long than max value of signed long not compiled
fix array field declared as pointer in C
fix std.io.file.DirectoryStream.read
fix problems caused by class and struct fields not being compiled in order of declaration
fix child class has parent class objectData
fix rethrowing exception causes infinite loop
fix multiple catches C error
fix duplicate modifiers check added
fix interface can now be used as template argument
fix function pointer can now be used as template argument
fix access modifiers can only be used in classes and modules check added
fix modifier cannot be applied to this function check added
fix var used to declare string in module C error
fix number literals C errors
fix invalid number error reports hex numbers without 0x
fix duplicate type char check added
fix type chars added to hexadecimal literals
fix chained call C error
fix unnecessary ; causing C error now causing compilation error
fix segfault
fix floating point number cannot be signed
fix chained call C errors
fix integer number with F not considered float
fix attempting to access function in current module in (module name).(function name) module not found error
fix method variants
fix interface not found when used inside of itself
fix constant instance variables now cannot be changed through copy constructor
fix String copy constructor
fix copy constructor
fix onExitHandlers not called before return statements in main block
fix parent constructor call C error
fix flags and ccArgs with multiple whitespaces not parsed correctly
fix [ ] expression C error
fix undefined instance variable zero-reference error
fix (type)(variable name)(exp) not checking types
fix duplicate catch block check added
fix ) inside multiline comment
fix abstract method C error
fix no expression next to return in void functions
fix chained call for getInstanceSize of pointers
fix gcc error
fix _std_system_addExitHandler0 C error
fix unknown type C error
fix added keywords true,false,nil,break,final and removed null from fpl-udl.xml
fix { and } are now operators in fdl-udl.xml so keywords next to them will be highlighted
fix template constructor not called
fix function pointer not copied
fix string added to fpl-udl.xml
fix copy constructor does not copy objectData
fix floating point number parse and toString methods
fix cannot be implicitly converted reported types in wrong order
fix added number suffixes to fpl-udl.xml
fix implicitly conversion of function return type
fix invalid code point
fix typo in "sbyte numbere expected"
fix variable field access C error