Skip to content

Releases: alinalihassan/Lesma

v0.15.0

26 Aug 07:56
Compare
Choose a tag to compare

0.15.0 (2022-08-26)

Bug Fixes

  • Fixed class import not working properly, optimized and simplified imports (0491912)
  • Fixed exit not being imported (hacky for now) (36eb565)
  • Fixed optimization being done with O0 (5c73bf1)
  • Fixed type comparisons across modules, fixed other asserts, contexts reused across modules (953f6bc)
  • Improved CLI help experience, added version (c03f426)
  • Reverted test files back to explicitly defining exit extern (93f5f33)

Features

  • Added local LLVM & Clang installation with bash script (e6e45fe)
  • Fixed assertions because of different contexts, now we share the same (1ff4f36)

v0.14.0

02 Aug 10:00
Compare
Choose a tag to compare

0.14.0 (2022-08-02)

Bug Fixes

  • Fixed error messages when compiling multiple files not showing proper file (a639e7c)
  • Fixed running strings would not report errors properly (f237c28)
  • Fixed tests and stdlib debug code (4daefe0)

Features

  • Added driver class to be used by other projects (server wink wink) (6d1be42)
  • Added export keyword, fixed classes and enums not being imported in compilation (e83055b)
  • Added python-like import syntax, LLVM 14 (c9012ea)

v0.13.3

01 Jun 09:08
Compare
Choose a tag to compare

0.13.3 (2022-06-01)

Bug Fixes

  • Removed release binaries (be95705)

v0.13.2

01 Jun 08:59
Compare
Choose a tag to compare

0.13.2 (2022-06-01)

Bug Fixes

v0.13.1

01 Jun 08:53
Compare
Choose a tag to compare

0.13.1 (2022-06-01)

Bug Fixes

  • Fixed assets not being added to release (c68fead)

v0.13.0

01 Jun 08:30
Compare
Choose a tag to compare

0.13.0 (2022-06-01)

Bug Fixes

  • Added function verification back (f4ed1a8)
  • Disable function verification again (8242b47)
  • Fixed enum comparison not working as expected (43d3ec8)
  • Fixed not being able to compare pointer addresses (60a6566)
  • Fixed not finding field in class having undefined behaviour (f1b575f)
  • Fixed tests (1d1d0e3)
  • Removed .tmp variable names in LLVM IR (5af603a)

Features

  • Added check for functions that don't always return (9510dbd)
  • Added check for return type to match function type (7c284ff)
  • Added pretty print for AST (e9d60c8)

v0.12.0

28 May 08:49
Compare
Choose a tag to compare

0.12.0 (2022-05-28)

Bug Fixes

  • Fixed de-referencing primitive values (5ebb733)
  • Temporary fix for code branches not having any more instructions (1a83cf7)

Features

  • Added bitcast for pointers of integer or void types (95a45c4)
  • Added low level types for better FFI interop (19ee297)
  • Added null pointer representation (5a8fb9c)
  • Added pointer and reference unary operators (ce4ea17)
  • added pointers and references for low level implementations (dc0569f)
  • Extended stdlib with string conversions, cmd input, and random (8e03a0d)
  • External FFI functions are no longer imported (47d2b8c)

v0.11.0

26 May 18:12
Compare
Choose a tag to compare

0.11.0 (2022-05-26)

Features

  • Functions can now refer to each other without having to be declared in a certain order (7230883)

v0.10.1

26 May 12:09
Compare
Choose a tag to compare

0.10.1 (2022-05-26)

Bug Fixes

  • Fixed recursive functions not being able to call themselves in their body (51541f4)
  • Fixed unary operator parsing ignoring left side (81702f1)

v0.10.0

25 May 17:59
Compare
Choose a tag to compare

0.10.0 (2022-05-25)

Bug Fixes

  • Fixed being able to have a dangling comma in parameter list (2ee6700)
  • Fixed vardecl bug (d65b145)
  • Fixed variable declaration was creating the values twice (a0df418)

Features

  • Added varargs, currently only for extern functions, added print for all types (510f78a)
  • Classes and Enums can now be imported properly from other modules (dd78333)
  • Nested imports working properly, already read modules are skipped. (c862e9a)