Commit graph

4 commits

Author SHA1 Message Date
Kevin Eady
593cfffb83
Add uninit, true, false keywords to grammar (#596)
* Update grammar

* Update expression handling for uninit

* update existing tests

* Add new tests

* Remove fullpath from escriptgrammar generation comment

* fix tests

* Update eScript guide

* Declare escript version 0x11

* Add core-changes

* Add `true` and `false` to grammar

* true/false implementation

* Fix existing tests

* Add new tests

* Update core changes

* add docs

* Fix BooleanValue::describe_to

* bool optimizations

* optimize uninit

* remove unused var assignments

* Update grammar for case labels for uninit, booleans

* Fix case label handling for uninit, true, false

* Tests

* Fix compiler version display v1.1700000017881393 -> v1.17

* optimize boolean binary operations

* fix unary boolean optimizer

* add boolean, uninit optimizer test

* Use new fmt lib apis

* Fix compiler warning

* really fix warning lol

* Add Executor[Module]::getParam for bools, FindSubstance test
2024-01-20 05:38:25 +01:00
Gabriele Tozzi
96fb55fee2 Tests: re-added string20, support multiple runs 2016-01-25 02:26:54 +01:00
Gabriele Tozzi
95b41a1e9b Temporarily disabling the string20 test case until weird comparison is addressed
The comparison (< and > operators) between objects of different types is
now based on object's addresses in memory. This leads to unpredictable results
and causes troubles with test scripts.

Proposed solution is:
- This is undefined behavior and could change in future, leave it undocumented
- Error and Undefined should always be < than any other object
- Objects of different type should compare < or > based on their Type ID
- Objects of the same type should always have comparison method implemented.
  The code should not compile if those methods have not been implemented.
2016-01-20 21:56:13 +01:00
Gabriele Tozzi
c4747601cb Test suite: added extensive string tests
Will be helpful for later comparisons while implementing unicode
2015-12-26 13:58:51 +01:00