Commit Graph
92 Commits
Author SHA1 Message Date
chriseth 2738045030 Cleaner shift handling and type conversion for binary operations. 2016-12-12 11:12:12 +01:00
chriseth 2df60bec92 Type after shift should be type of left operand. 2016-12-12 11:12:12 +01:00
Alex Beregszaszi b8b4f5e9f9 Support bitshifting in variables 2016-12-12 11:12:10 +01:00
Alex Beregszaszi a9e92cb686 Rename dev::validate to dev::validateUTF8 2016-11-28 22:28:21 +00:00
Alex Beregszaszi c01426efec Make position optional in dev::validate 2016-11-28 22:27:55 +00:00
chriseth da566b956e Indentation. 2016-11-25 14:36:44 +01:00
Yoichi Hirai e136ec8704 ast: string literals that are not valid UTF are not convertible to strings 2016-11-25 13:36:06 +01:00
VoR0220 3f9f725737 Fix licensing headers
Signed-off-by: VoR0220 <rj@erisindustries.com>
2016-11-23 12:22:33 +01:00
chriseth 2c14a96820 Some more assertions and style changes. 2016-11-16 15:09:01 +01:00
chriseth ec31d08775 Change encoding to address-funid and add "function" as ABI type. 2016-11-16 14:37:19 +01:00
chriseth 22b4d1b29a Check that no internals are used in any external function type. 2016-11-16 14:37:18 +01:00
chriseth 925d674146 Disallow payable internal functions. 2016-11-16 14:37:18 +01:00
chriseth f21f794f3c delete for function types 2016-11-16 14:37:18 +01:00
chriseth ff3553a348 Change alignment. 2016-11-16 14:37:18 +01:00
chriseth 62492b67e7 Changelog entry and small fixes. 2016-11-16 14:37:18 +01:00
chriseth 6f19559de0 Fix some type checks and tests for internal / external function parameters. 2016-11-16 14:37:17 +01:00
chriseth dd173f83e3 Code generator for function types. 2016-11-16 14:37:17 +01:00
chriseth cc8583ec7d Function types. 2016-11-16 14:37:17 +01:00
Alex Sinyagin 6db9fd498a Print canonical names of structs and enums in AST 2016-11-14 13:39:46 +00:00
Yoichi Hirai 20c2ca3992 ast, codegen: disallow conversion between different enum types 2016-11-11 17:48:03 +01:00
Yoichi Hirai e6098f0039 ast: add EnumType::numberOfMembers() 2016-11-11 17:47:48 +01:00
Yoichi Hirai 6c15757618 Type checker: move the burden of computing mobile type to commonType
This solves #621
2016-11-11 15:51:54 +01:00
Yoichi Hirai 3ca5900b8c ast: ban signed EXP, fixing #1246 2016-10-25 16:49:10 +02:00
chriseth f25aa0c68b More checks for missing mobile type. 2016-10-24 16:45:25 +02:00
chriseth 2b00804d1d Fix crash in throw. 2016-10-24 14:32:49 +02:00
Yoichi Hirai 7887045a48 ast: simplifications suggested by @chriseth 2016-10-20 16:09:52 +02:00
Yoichi Hirai ff9039b2a8 When a contract type is super, its members do not contain the functions of itself
Fixes #1151
2016-10-20 16:09:52 +02:00
Alex Beregszaszi 7ac27c957e Use >> (SAR) to denote constant shifts 2016-10-20 00:03:09 +01:00
Alex Beregszaszi 33250eef9e Reject negative shifts within constants 2016-10-20 00:03:09 +01:00
RJ 48f2028911 Support shifting constants 2016-10-20 00:03:09 +01:00
Alex Beregszaszi fdd1108c1c Omit non-convertible bound functions 2016-10-19 10:41:04 +01:00
Alex Beregszaszi 003359a0b6 Ensure that bound functions cannot be defined without self type 2016-10-19 10:41:04 +01:00
Yoichi Hirai 8e11bac8de Check if a fixedBytes fits an integer type
before looking up the size of the integer type.

Fixes #1150.
2016-10-13 20:17:13 +02:00
Alex Beregszaszi aefb6e5fcf Rename dev::sha3 to dev::keccak256 2016-10-06 14:53:40 +01:00
Alex Beregszaszi 2d9c407456 Include assert for selfType on bound functions to avoid crash 2016-09-06 22:10:51 +01:00
chriseth 9c64edf110 Change function type to include and propagate payable and constant modifier. 2016-09-05 21:28:28 +02:00
Alex Beregszaszi 962531af96 Merged in changes from chriseth/payable 2016-09-05 21:28:28 +02:00
Alex Beregszaszi a34f2f1a31 Support payable keyword for functions 2016-09-05 21:28:18 +02:00
Denton Liu faf0b3f669 Remove After from Types.cpp 2016-08-11 10:15:59 -04:00
Alex Beregszaszi 5d9347f022 Remove dev::utf8 namespace 2016-08-08 20:05:31 +01:00
Alex Beregszaszi f1df3dee53 Use size_t in dev::utf8::validate() 2016-08-08 20:05:31 +01:00
Alex Beregszaszi e8c2e87397 Use utf8::validate in StringLiteral::toString 2016-08-08 19:57:41 +01:00
Alex Beregszaszi bf76321c9e Move LiteralString::toString from the header 2016-08-08 19:08:31 +01:00
chriseth 754a992500 Inaccessible dynamic types 2016-06-02 12:52:25 +02:00
chriseth 708129abd5 Fixes for invalid cleanups for small types. 2016-05-20 16:52:40 +02:00
VoR0220 9192357452 updated docs
types

reference
2016-05-18 16:36:05 -05:00
VoR0220 6289410152 explicit conversion and loosening of binary operations on integer and fixed point types...still other problems
fixed some spaces and deleted lines from failing test
2016-05-18 15:52:09 -05:00
VoR0220 3ba308fb2e current debugging info 2016-05-18 15:52:09 -05:00
chriseth d4206b7cd0 Remove unused tests and add asserts for not implemented parts in code generation.
quick fix on christian's rational

change so that ubuntu will stop yelling

be more specific with rational declaration for Windows sake

rational in namespace correction for windows
2016-05-10 16:03:33 -05:00
chriseth 656405240e Simplify interface of RationalNumber. 2016-05-10 19:40:37 +02:00