chriseth
|
83bf34c571
|
Review comments and cleanup.
|
2017-04-25 16:49:03 +02:00 |
|
chriseth
|
4755757c00
|
Remove some errors checks from code generation (was moved to analysis already).
|
2017-04-25 16:49:03 +02:00 |
|
chriseth
|
580921b329
|
Perform stack height checks in assembly analysis phase.
|
2017-04-25 16:49:03 +02:00 |
|
chriseth
|
c4a0826f40
|
Add some missing error locations.
|
2017-04-25 16:49:03 +02:00 |
|
chriseth
|
c6fa78c73e
|
Use actual type checking phase of assembler.
|
2017-04-25 16:49:03 +02:00 |
|
chriseth
|
e0849f2f3b
|
Split external identifier access into resolving and code generation.
|
2017-04-25 16:49:03 +02:00 |
|
chriseth
|
5d6747eb32
|
Refactor assembly analysis into scope filling and checking.
|
2017-04-25 16:49:03 +02:00 |
|
chriseth
|
72fdf755c9
|
Register functions.
|
2017-04-25 16:49:03 +02:00 |
|
chriseth
|
c3b839ca75
|
Merge pull request #2164 from ethereum/jsonio-catch-internal-exceptions
JSON IO catch internal exceptions
|
2017-04-25 10:45:59 +02:00 |
|
Alex Beregszaszi
|
5e7a643051
|
Catch jsoncpp exceptions
|
2017-04-24 22:49:50 +01:00 |
|
Alex Beregszaszi
|
2f66c69bd1
|
Do not crash on invalid JSON input
|
2017-04-24 22:38:03 +01:00 |
|
chriseth
|
4d111e3366
|
Merge pull request #2152 from ethereum/warnRevert
Warn about side-effect free statements.
|
2017-04-24 19:25:45 +02:00 |
|
chriseth
|
d3b8d5f049
|
Merge pull request #2161 from ethereum/jsonio-cleanup
Small cleanups to JSON IO
|
2017-04-24 17:12:37 +02:00 |
|
chriseth
|
2c3fea55df
|
Merge pull request #2159 from ethereum/jsonio-source-verify
Verify supplied hash in JSON I/O
|
2017-04-24 16:15:32 +02:00 |
|
Alex Beregszaszi
|
4a9ba5b952
|
Verify supplied hash in JSON I/O
|
2017-04-24 14:34:29 +01:00 |
|
Alex Beregszaszi
|
43eb839871
|
Do not fail if parsing failed in StandardCompiler
|
2017-04-24 11:44:33 +01:00 |
|
Alex Beregszaszi
|
3cd02ca148
|
Change error type names to not include spaces
|
2017-04-24 11:34:02 +01:00 |
|
Alex Beregszaszi
|
e24c35bce0
|
Be a bit more verbose and capture Boost exceptions in StandardCompiler
|
2017-04-24 11:34:02 +01:00 |
|
Alex Beregszaszi
|
c82a203206
|
Document that the ReadFileCallback should not emit exceptions
|
2017-04-22 14:08:28 +01:00 |
|
chriseth
|
c76e0a5872
|
Changed const reference to value.
|
2017-04-22 01:12:38 +02:00 |
|
Alex Beregszaszi
|
8de02c7778
|
Support URL sources in StandardCompiler
|
2017-04-21 16:44:15 +01:00 |
|
chriseth
|
937695bfdc
|
Change error message.
|
2017-04-21 15:04:03 +02:00 |
|
chriseth
|
9bc9fe6af7
|
Warn about side-effect free statements.
|
2017-04-21 11:36:38 +02:00 |
|
Alex Beregszaszi
|
6ae7a87b78
|
Rename ast to legacyAST in StandardCompiler
|
2017-04-20 19:38:00 +01:00 |
|
Alex Beregszaszi
|
f71b465eb7
|
Ensure the language field is present in the JSON
|
2017-04-20 19:38:00 +01:00 |
|
Alex Beregszaszi
|
6d13260232
|
Pull out collectEVMObject
|
2017-04-20 19:38:00 +01:00 |
|
Alex Beregszaszi
|
413c146edd
|
Enclose local functions in a namespace
|
2017-04-20 19:38:00 +01:00 |
|
Alex Beregszaszi
|
aa0776d5e8
|
Support Why3 in StandardCompiler
|
2017-04-20 19:38:00 +01:00 |
|
Alex Beregszaszi
|
b513db74a0
|
Support gas estimates in StandardCompiler
|
2017-04-20 19:38:00 +01:00 |
|
Alex Beregszaszi
|
77d5148f0d
|
Reject import URLs for now
|
2017-04-20 19:38:00 +01:00 |
|
Alex Beregszaszi
|
df7e703925
|
Support the metadata.useLiteralContent setting
|
2017-04-20 19:38:00 +01:00 |
|
Alex Beregszaszi
|
ef559de84f
|
Properly split contract filename and name
|
2017-04-20 19:38:00 +01:00 |
|
Alex Beregszaszi
|
ad1fe86508
|
Support linkReferences
|
2017-04-20 19:38:00 +01:00 |
|
Alex Beregszaszi
|
2df52edfbd
|
Support new assembly output
|
2017-04-20 19:38:00 +01:00 |
|
Alex Beregszaszi
|
a87dd17d0f
|
Move opcodes inside the bytecode section
|
2017-04-20 19:38:00 +01:00 |
|
Alex Beregszaszi
|
63b6d0099f
|
Support methodIdentifiers
|
2017-04-20 19:38:00 +01:00 |
|
Alex Beregszaszi
|
f25efceaf8
|
Support proper error reporting in StandardCompiler
|
2017-04-20 19:38:00 +01:00 |
|
Alex Beregszaszi
|
b3c6b1e936
|
Refactor formatError
|
2017-04-20 19:38:00 +01:00 |
|
Alex Beregszaszi
|
2c15e2b541
|
Fail if no sources are given
|
2017-04-20 19:38:00 +01:00 |
|
Alex Beregszaszi
|
5aec120da3
|
Support the AST output
|
2017-04-20 19:38:00 +01:00 |
|
Alex Beregszaszi
|
50bb24af5e
|
Include source mapping identifier
|
2017-04-20 19:38:00 +01:00 |
|
Alex Beregszaszi
|
115458c50e
|
Output legacyAssembly in StandardCompiler
|
2017-04-20 19:38:00 +01:00 |
|
Alex Beregszaszi
|
4eaee772b3
|
Capture error messages from the JSON parser
|
2017-04-20 19:38:00 +01:00 |
|
Alex Beregszaszi
|
f8cb0766d4
|
Add formatFatalError() to StandardCompiler
|
2017-04-20 19:38:00 +01:00 |
|
Alex Beregszaszi
|
ce87984cc1
|
Parse remappings in StandardCompiler
|
2017-04-20 19:38:00 +01:00 |
|
Alex Beregszaszi
|
81775b2df6
|
Parse libraries in StandardCompiler
|
2017-04-20 19:38:00 +01:00 |
|
Alex Beregszaszi
|
13fa440d37
|
Parse optimizer settings in StandardCompiler
|
2017-04-20 19:38:00 +01:00 |
|
Alex Beregszaszi
|
418759ece0
|
Catch exceptions of StandardCompiler
|
2017-04-20 19:38:00 +01:00 |
|
Alex Beregszaszi
|
985db17e1e
|
Initial implementation of StandardCompiler
|
2017-04-20 19:38:00 +01:00 |
|
Alex Beregszaszi
|
5754b13b47
|
Add StandardCompiler skeleton
|
2017-04-20 19:38:00 +01:00 |
|
Alex Beregszaszi
|
bf074f3f41
|
Fix source index allocation in CompilerStack. Depending on compiler(optimisations) this could be off-by-one.
|
2017-04-20 19:20:14 +01:00 |
|
Yoichi Hirai
|
3cacea74c9
|
Merge pull request #2117 from ethereum/implementAsmOut
Implement missing assembly output functions and do not use PushString for assembly.
|
2017-04-18 18:11:25 +02:00 |
|
Alex Beregszaszi
|
54dcb0e11b
|
Keep gas values as a string in CompilerStack::gasEstimate
|
2017-04-13 02:18:29 +01:00 |
|
Alex Beregszaszi
|
3fbb48bd46
|
Exclude fallback function from the internal functions in estimateGas
|
2017-04-13 02:17:40 +01:00 |
|
Alex Beregszaszi
|
e6221108b6
|
Move gasEstimate into CompilerStack
|
2017-04-13 02:17:37 +01:00 |
|
chriseth
|
4d715e9055
|
Implement missing assembly output functions and do not use PushString for assembly.
|
2017-04-11 19:54:44 +02:00 |
|
Alex Beregszaszi
|
bd48f181b5
|
Merge pull request #2098 from ethereum/sourceformatter
Introduce formatExceptionInformation
|
2017-04-10 14:46:59 +01:00 |
|
Alex Beregszaszi
|
b1db6eac8b
|
Introduce formatExceptionInformation
|
2017-04-10 14:07:36 +01:00 |
|
Alex Beregszaszi
|
623b8eb107
|
Pull out ReadFile from CompilerStack
|
2017-04-10 12:49:47 +01:00 |
|
Federico Bond
|
e6f13353f2
|
Fix PostTypeChecker retaining state across contracts
|
2017-04-08 18:45:15 -03:00 |
|
chriseth
|
4792806b99
|
Fix: Contract inheriting from base with unimplemented constructor is abstract.
|
2017-03-21 18:12:08 +01:00 |
|
chriseth
|
5ced3af3a0
|
Visit structs only once.
|
2017-03-21 15:05:59 +01:00 |
|
Alex Beregszaszi
|
96c09fcbcd
|
Simplify interface checks for FunctionDefinition
|
2017-03-17 17:07:20 +00:00 |
|
Alex Beregszaszi
|
2067a00f22
|
Disallow private or internal functions in interfaces
|
2017-03-17 17:07:18 +00:00 |
|
Alex Beregszaszi
|
d5102c1db7
|
Disallow constructor in interfaces
|
2017-03-17 17:06:52 +00:00 |
|
Alex Beregszaszi
|
2c4bce2d62
|
Disallow enums in interfaces
|
2017-03-17 17:06:52 +00:00 |
|
Alex Beregszaszi
|
16a91ef90a
|
Use declared instead of defined
|
2017-03-17 17:06:52 +00:00 |
|
Alex Beregszaszi
|
f8da9a8fd5
|
Factor out tokenToContractKind
|
2017-03-17 17:06:52 +00:00 |
|
Alex Beregszaszi
|
4693aed177
|
Reject invalid definitions for interface contracts
|
2017-03-17 16:27:04 +00:00 |
|
Alex Beregszaszi
|
54230d2d5d
|
Support interface (contract) keyword in the parser
|
2017-03-17 16:27:04 +00:00 |
|
Alex Beregszaszi
|
6d4628ace4
|
Add ContractKind to ContractDefinition
|
2017-03-17 16:27:04 +00:00 |
|
chriseth
|
c37397c178
|
Merge pull request #1773 from ethereum/ASTEntry
Ast entry
|
2017-03-17 17:24:58 +01:00 |
|
chriseth
|
44a0329921
|
Comment.
|
2017-03-17 14:44:44 +01:00 |
|
chriseth
|
245c8914cf
|
Merge pull request #1792 from ethereum/function-kind
Rename FunctionType::Location to Kind
|
2017-03-17 10:25:58 +01:00 |
|
Alex Beregszaszi
|
e0ff70778a
|
Rename ErrorMesage to ErrorMessage
|
2017-03-16 23:59:36 +00:00 |
|
djudjuu
|
616a9854e9
|
AST entry for VariableDeclaration
|
2017-03-16 16:56:44 +01:00 |
|
Alex Beregszaszi
|
3ae88377d6
|
Change references to FunctionType::Location
|
2017-03-16 12:49:52 +00:00 |
|
Alex Beregszaszi
|
7123f25210
|
Rename FunctionType::Location to FunctionType::Kind
|
2017-03-16 12:49:17 +00:00 |
|
chriseth
|
0c8a766146
|
Merge pull request #1698 from ethereum/exp-notation
Fix scientific notation in number literals
|
2017-03-15 14:55:45 +01:00 |
|
Alex Beregszaszi
|
e923f27ea8
|
Split out parseRational from isValidLiteral
|
2017-03-15 13:06:27 +00:00 |
|
Alex Beregszaszi
|
dde87de4cf
|
Rename x to value
|
2017-03-15 13:06:27 +00:00 |
|
Alex Beregszaszi
|
a2b9f52ca4
|
Disallow radix points in hex literals
|
2017-03-15 13:06:27 +00:00 |
|
Alex Beregszaszi
|
07045d492f
|
Do not try parsing hex numbers as scientific notation
|
2017-03-15 13:06:27 +00:00 |
|
Alex Beregszaszi
|
dfc8f890bf
|
Support older version of boost
|
2017-03-15 13:06:27 +00:00 |
|
Alex Beregszaszi
|
1083e6da68
|
Support negative exponent
|
2017-03-15 13:06:26 +00:00 |
|
Alex Beregszaszi
|
924a8fff6b
|
Fix exponentional notation in number literals
|
2017-03-15 13:06:24 +00:00 |
|
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 |
|