Ulf Norell
3efde2a2a1
handle hash literals when permissive_address_literals
2019-03-01 11:36:28 +01:00
Ulf Norell
edc37bcf1b
add case for signature literals to pretty printer
2019-03-01 11:08:28 +01:00
Ulf Norell
20f2a05638
fix problem with indent detection when inserting the __call function
2019-03-01 11:08:14 +01:00
Ulf Norell
c2a5ed28cf
please dialyzer
2019-03-01 11:07:46 +01:00
Ulf Norell
56f70fea6c
test oracle calldata fixes
2019-03-01 09:36:43 +01:00
Ulf Norell
9e908369ec
check create_calldata contract without the __call function first
2019-03-01 09:21:56 +01:00
Ulf Norell
9984679a24
better handling of permissive_literals
...
...that doesn't make the compiler crash
2019-03-01 09:02:55 +01:00
Robert Virding
0d56130baa
Use correct parse error formats
2019-02-28 16:13:57 +01:00
Robert Virding
7448da16bb
Make dialyzer happy and keep it quiet
2019-02-28 16:13:57 +01:00
Robert Virding
6f582af83e
Add new encode function interface
2019-02-28 16:13:57 +01:00
Robert Virding
5d116b2e5a
Make the decoder return a binary and untabify
2019-02-28 16:13:57 +01:00
Robert Virding
cea581988d
Don't decode init function as it should never be called
2019-02-28 16:13:57 +01:00
Robert Virding
2f36380a81
Add handling of private and stateful functions
2019-02-28 16:13:57 +01:00
Robert Virding
d330133b3f
First version, very much WIP
2019-02-28 16:13:57 +01:00
Hans Svensson
eb77a73d15
Correctly handle ArgTypes in create_calldata
2019-02-28 14:44:16 +01:00
Hans Svensson
6d6fff2612
Better error handling when init is present but wrong
2019-02-28 09:56:16 +01:00
Hans Svensson
95bf0d4b6c
Fix handling of init in create_calldata
2019-02-27 20:42:42 +01:00
Hans Svensson
e94c1f9d84
Merge pull request #30 from aeternity/to-sophia-value-revisited
...
To sophia value revisited
2019-02-27 11:36:03 +01:00
Hans Svensson
a263b09e57
Remove leftover io:format
2019-02-27 11:00:00 +01:00
Hans Svensson
5a3c8530b4
Dialyzer found an error
2019-02-26 21:03:52 +01:00
Ulf Norell
e0fff00e64
get rid of byte code argument to create_calldata
...
This means that there is less type checking at calldata creation time.
Make sure that we check that the function hash exists before calling
a contract!
2019-02-26 17:31:53 +01:00
Hans Svensson
7c95aafbb8
Merge pull request #29 from aeternity/more_better_errors
...
Improve Events error message + more tests
2019-02-26 16:21:35 +01:00
Ulf Norell
5a4a84805f
change create_calldata function to also take fun name and arguments
2019-02-26 15:01:27 +01:00
Ulf Norell
cc3e322179
new version of to_sophia_value
...
takes function name and binary blob
2019-02-26 14:34:57 +01:00
Hans Svensson
7b474e439c
Improve Events error message + more tests
2019-02-25 21:53:52 +01:00
Ulf Norell
eb926b1352
fix type signature
2019-02-25 14:42:47 +01:00
Ulf Norell
f866e24624
pretty print nullary constructor applications without the parens
2019-02-25 14:23:44 +01:00
Ulf Norell
ccad660eac
add compiler function to translate a vm value to Sophia AST
2019-02-25 14:23:23 +01:00
Erik Stenman
53b85ce6f4
Use right name for inc/1. Remove dead code.
2019-02-25 13:25:36 +01:00
Erik Stenman
b7b54b38a8
Add release target.
2019-02-20 17:34:49 +01:00
Ulf Norell
ae3f292f03
Skeleton for Fate backend
2019-02-20 09:44:32 +01:00
Ulf Norell
b5b0d30fc4
Less hacky handling of Chain.event
2019-02-08 14:48:38 +01:00
Ulf Norell
236ef6eb89
Dialyzed!
2019-02-08 14:16:06 +01:00
Ulf Norell
aa6d56ce9b
Allow passing an explicit "file system" for included files to the compiler
2019-02-08 14:16:06 +01:00
Ulf Norell
27cbedc7ab
Further generalise used names computation
2019-02-08 14:16:06 +01:00
Ulf Norell
2ac47059c1
Refactor used_ids and used_types into a generic fold
2019-02-08 14:16:06 +01:00
Hans Svensson
421bc01012
Add error messages for bad include and nested namespace
2019-02-08 14:16:06 +01:00
Hans Svensson
2b7490776e
Add include directive
...
Add an include directive to include namespaces into a contract. Only allowed at the top level.
To allow includes, either call through aeso_compiler:file or set the option `allow_include` (and add `include_path`(s)).
2019-02-08 14:16:06 +01:00
Ulf Norell
0a5b80668f
Don't mess up on multiple namespaces in icode compiler
2019-02-08 14:16:06 +01:00
Ulf Norell
8262d7780f
Fix some issues pointed out by dialyzer
2019-02-08 14:16:06 +01:00
Ulf Norell
e6f01481bf
Bind state and event primitives only in contracts (and with the right types)
2019-02-08 14:16:06 +01:00
Ulf Norell
d9188d58a7
Proper checking of types
2019-02-08 14:16:06 +01:00
Ulf Norell
dfa286d43c
Deadcode elimination (icode post pass)
2019-02-08 14:16:06 +01:00
Ulf Norell
478da2af33
Don't expose namespace functions as entrypoints
2019-02-08 14:16:06 +01:00
Ulf Norell
10be09fe30
Add checks on event constructor arguments to type checker
2019-02-08 14:16:06 +01:00
Ulf Norell
e6c9d0fac1
Put event index information in constructor annotation instead of in argument types
2019-02-08 14:16:06 +01:00
Ulf Norell
367f87b612
Implement namespaces
...
This includes a massive refactoring of the type checker, getting
rid of most of the ets tables and keeping a proper environment.
2019-02-08 14:16:06 +01:00
Hans Svensson
3ba89d9f55
Merge ROMA into MINERVA
2019-02-08 13:38:37 +01:00
Robert Virding
515f444e7c
Remove specific filename extension handling
...
And take the chance to make file handling errors ahve the same format
as other errors.
2019-02-06 14:02:46 +01:00
Hans Svensson
362373c0d7
Add escript post_hooks
2019-01-30 10:58:19 +01:00