Commit Graph

846 Commits

Author SHA1 Message Date
chriseth
ab178b8bac Mention 'transfer' in warning about unchecked 'send'. 2017-03-15 11:10:24 +01:00
Yoichi Hirai
d134fda0c0 Merge pull request #1729 from ethereum/constantvariables
Only allow pure expressions for constant state variables.
2017-03-15 10:03:35 +01:00
chriseth
9f328ff749 Turn non-constant constants error into warning. 2017-03-14 19:25:16 +01:00
chriseth
47cd8964b8 Require and Assert. 2017-03-14 14:21:33 +01:00
chriseth
592cec7e90 Disallow constants that are neither value types nor strings. 2017-03-13 13:30:23 +01:00
chriseth
14948e514d Allow enum values for constants. 2017-03-13 13:30:23 +01:00
chriseth
f39763e91c Type checking for pure expressions. 2017-03-13 13:30:21 +01:00
Yoichi Hirai
ef8b56a058 Merge pull request #1751 from ethereum/warnLiteralExpBase
Warn if base of exponentiation operation is a literal.
2017-03-10 19:25:47 +01:00
Ryan Casey
fe8d09a3c1 Fix 'ambiguous overload for operator==' Boost error. 2017-03-09 17:04:26 -08:00
Ryan Casey
797e05ba08 Resolve build-stopping error about 'minor' and 'major' being defined in <sys/types.h> 2017-03-09 17:03:19 -08:00
Yoichi Hirai
e364909e06 Merge pull request #1747 from ethereum/fixICEInternalConstructor
Move privateness of constructor into AST itself.
2017-03-08 17:49:14 +01:00
chriseth
3f9a775834 Merge pull request #1748 from ethereum/singletonArray
Use mobile type for singleton array.
2017-03-08 16:11:03 +01:00
chriseth
93ef7fd260 Disallow compound assignment for tuples. 2017-03-08 12:42:07 +01:00
Yoichi Hirai
78f7dd2344 Merge pull request #1750 from ethereum/asmoctal
Disallow octal numbers in parser.
2017-03-08 12:24:22 +01:00
Yoichi Hirai
a1e350a4ae Merge pull request #1699 from ethereum/asmlabels
Assembly labels with stack information
2017-03-08 11:56:44 +01:00
chriseth
1324ebc4bf Warn about literal constant base in exponentiation. 2017-03-07 13:44:11 +01:00
chriseth
bb06569dc6 Disallow octal literals. 2017-03-07 12:34:32 +01:00
chriseth
a2ac05e1a2 Merge pull request #1733 from ethereum/selfReferentialConstant
Detect cyclic dependencies between constants.
2017-03-06 17:18:39 +01:00
chriseth
2fcccb97d3 Merge pull request #1737 from ethereum/localmappings
Disallow uninitialized mapping variables.
2017-03-06 15:05:58 +01:00
chriseth
5c5d83fd70 Check for circular references in constant variables. 2017-03-06 15:05:09 +01:00
chriseth
c500d9f717 Convert to mobile type for array type. 2017-03-06 14:42:28 +01:00
chriseth
c126edc6ea Disallow uninitialized mapping variables. 2017-03-06 14:27:18 +01:00
chriseth
960b5fa032 Error constructor. 2017-03-06 14:27:18 +01:00
chriseth
f300bdb020 Move public constructor property into AST itself. 2017-03-06 14:12:42 +01:00
chriseth
ca4e2933dd Strict checking for AST annotation types. 2017-03-06 14:12:42 +01:00
chriseth
f521fd7b19 Mention way to remove warning. 2017-03-06 13:37:57 +01:00
Yoichi Hirai
cfbbd89daf Merge pull request #1702 from ethereum/assertError
Change effect of assert to invalid opcode.
2017-03-03 18:25:50 +01:00
chriseth
f8ce32f2a6 Fix error message. 2017-03-03 15:41:02 +01:00
chriseth
369005fc03 Remove stack annotations again. 2017-03-03 15:41:02 +01:00
chriseth
13fd569f76 First reset stack height, then register variables. 2017-03-03 15:41:02 +01:00
chriseth
455e8a4ef8 Move lambda. 2017-03-03 15:41:02 +01:00
chriseth
41236cd08c Slightly cleaner label ids. 2017-03-03 15:41:02 +01:00
chriseth
e963405a19 Partially add functions. 2017-03-03 15:41:02 +01:00
chriseth
647473cf01 Generic visitor. 2017-03-03 15:41:02 +01:00
chriseth
caa3761dc9 Refactor variable access. 2017-03-03 15:41:02 +01:00
chriseth
25dcfa3480 Refactor CodeGen to recurse on blocks. 2017-03-03 15:41:01 +01:00
chriseth
7f2def8971 Analysis refactoring. 2017-03-03 15:41:01 +01:00
chriseth
98e343b3fc Parsing of labels with stack info. 2017-03-03 15:41:01 +01:00
chriseth
cc01d870ff Disallow variable declaration with inferred empty tuple type. 2017-03-02 14:33:58 +01:00
chriseth
5c411b472b Merge pull request #1728 from ethereum/externalfunctiontypes
Convert reference types to pointers in member function conversion.
2017-03-02 12:08:17 +01:00
chriseth
a689152c4b Convert reference types to pointers in member function conversion. 2017-03-01 16:02:36 +01:00
chriseth
7a24a5764e Add line info to serious exceptions. 2017-02-24 19:32:41 +01:00
chriseth
d2c79bf8e9 Merge pull request #1700 from ethereum/fixNoMobile
Some checks for the existence of mobile type.
2017-02-24 15:50:45 +01:00
chriseth
92bf5154fd Merge branch 'develop' into fixNoMobile 2017-02-24 10:39:55 +01:00
Alex Beregszaszi
4d290e551c Disallow setting .gas() on .transfer() 2017-02-24 00:27:36 +00:00
Alex Beregszaszi
c674155e58 Do not keep the gas stipend if sending non-zero value 2017-02-24 00:18:18 +00:00
Alex Beregszaszi
81006dae98 Support gas modifier on addr.transfer() 2017-02-24 00:18:18 +00:00
Alex Beregszaszi
4264625c69 Implement address.transfer() 2017-02-24 00:17:45 +00:00
chriseth
4b1e8111cc Remove assert for now. 2017-02-23 19:43:40 +01:00
chriseth
c0961664f9 Deposit one stack item for non-value types in inline assembly type checking. 2017-02-20 12:33:22 +01:00