35 Commits
Author SHA1 Message Date
Alex Beregszaszi c70d73809a Use boost::starts_with 2017-06-28 17:01:55 +01:00
Alex Beregszaszi 06fe61f89b Rename to isHexNumber() 2017-06-28 17:01:55 +01:00
Alex Beregszaszi 8b0c866f02 Add hasHexPrefix() to AST::Literal 2017-06-28 16:57:32 +01:00
chriseth f340ff8764 Fix strings interpreted as addresses. 2017-06-22 16:48:44 +02:00
Alex Beregszaszi d5f8ce90c7 Merge interface/Exceptions and interface/Utils 2017-06-22 11:25:07 +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 3949624a61 Also check library addresses. 2017-01-24 23:37:48 +01:00
chriseth 1316bb7565 Warn about invalid checksums of addresses. 2017-01-24 23:37:48 +01:00
chriseth 7159944f0f Reset AST node IDs between compilation runs. 2017-01-20 12:00:16 +01:00
chriseth 005e190885 Merge pull request #1397 from roadriverrail/contract_collision
Error out when contracts collide on name
2017-01-18 14:28:00 +01:00
chriseth 99eaadd2cd Deterministic AST node identifiers. 2017-01-17 10:45:45 +01:00
Rhett Aultman f10bf36ae3 Move fullyQualified() name to Declaration 2017-01-16 12:32:57 -05:00
Rhett Aultman 0c98e4b2da Stylistic corrections 2017-01-16 12:32:57 -05:00
Rhett Aultman 8f25bd54e3 Drop ':' if the source file name is empty
A large number of tests compile contracts while passing in an empty
string for the source name.  This leads to it being keyed by the name
":<contract>", while the tests try to look it up under the name
"<contract>".  This change resolves that issue by dropping the ':' in
cases where there is, effectively, no source file to prepend anyway.
2017-01-16 12:32:57 -05:00
Rhett Aultman 071b936b37 Only avoid collision if it's the same file
@chriseth had suggested that it would be better if contracts were
referenced in a file:contract notation, and that we output .bin files
that prepend original path names if necessary to avoid a collision.

This commit is mostly a draft; it still needs to be run through the test
suite.
2017-01-16 12:32:57 -05:00
Yoichi Hirai abc24420a7 ast: events have FunctionType too 2017-01-11 20:06:59 +01:00
Yoichi Hirai eda147f47b ast: add Declaration::functionType() 2017-01-11 19:55:50 +01:00
Yoichi Hirai 6a312233fc ast, codegen: enable accessing events through contract names.
Fixes #1286
2017-01-02 17:59:20 +01:00
chriseth 91ecc4533d Add swarm hash to the end of the bytecode. 2016-12-01 16:03:59 +01:00
chriseth 5789eaa78d Metadata stamp. 2016-12-01 16:03:59 +01:00
VoR0220 3f9f725737 Fix licensing headers
Signed-off-by: VoR0220 <rj@erisindustries.com>
2016-11-23 12:22:33 +01:00
Alex Beregszaszi 9719cf38e6 Move InterfaceHandler from string to JSON 2016-11-15 15:55:25 +00:00
Yoichi Hirai 9d9380d30e ast: add a null check 2016-10-21 13:01:45 +02:00
Yoichi Hirai 83e8fdecc5 ast: ContractDefinition::inheritableMembers contains enums as well as structs
This fixes #1131
2016-10-21 13:01:45 +02:00
Alex Beregszaszi aefb6e5fcf Rename dev::sha3 to dev::keccak256 2016-10-06 14:53:40 +01:00
chriseth f049430723 Code generation (missing external access and source locations). 2016-03-30 02:37:00 +02:00
chriseth 603dc58040 Simple aliasing during import. 2015-12-18 12:46:56 +01:00
chriseth f8228e8ab1 Relative paths in import directives. 2015-12-09 19:21:02 +01:00
chriseth 4aaa150674 Convert filter to template function. 2015-11-26 17:28:44 +01:00
chriseth b47d593252 Do not store elements of a contract by AST node type. 2015-11-26 15:37:55 +01:00
chriseth 86495dfc57 Make members context-sensitive. 2015-11-26 15:37:55 +01:00
chriseth 8fb49d85f9 Allow docstrings for statements. 2015-10-26 19:47:25 +01:00
chriseth b4f561680a Store docstrings in AST annotations. 2015-10-26 15:24:36 +01:00
chriseth e3dffb611f File reorganisation. 2015-10-21 00:46:01 +02:00