Christian
a017d2b1de
Remove const from make_shared to allow enable_shared_from_this to work on MacOS.
10 years ago
Christian
e1338c7e6c
Arbitrary precision integer constants.
10 years ago
Christian
f6ddd3fd33
Possibility for unary operators to change type.
10 years ago
Christian
874b2b34ea
Use shared_from_this instead of manually supplying a shared_ptr to this.
10 years ago
Lefteris Karapetsas
5e77063c38
Fixing a solAssert in getInterfacefunctions()
10 years ago
Lefteris Karapetsas
299305548f
Adjustments to Solidity compiler code for Function Hash
10 years ago
Christian
7158f408ac
Remove const from make_shared to allow enable_shared_from_this to work on MacOS.
10 years ago
Christian
1d3801f726
Arbitrary precision integer constants.
10 years ago
Christian
cc55936f67
Possibility for unary operators to change type.
10 years ago
Christian
ff4fe8257a
Use shared_from_this instead of manually supplying a shared_ptr to this.
10 years ago
Lefteris Karapetsas
b8b75c841b
Solidity getInterfaceFunctions is now a map of hash to Function
- Also introduced dependency between libsolidity and libdevcrypto
- Compler's appendFunctionSelector now has a first version of using
function signature hash instead of index
10 years ago
Lefteris Karapetsas
48080e0415
Small issues with Canonical Function Signature
- Also added an extra test
10 years ago
Lefteris Karapetsas
0c003958b9
FunctionType also gets CanonicalSignature
- also using iterators in the signature creation function
10 years ago
Lefteris Karapetsas
0c83932d91
Test for the Canonical Signature of a function
10 years ago
Lefteris Karapetsas
c2b194d4c3
Creating the canonical signature of a function, for later use in the ABI
10 years ago
Christian
6e36344632
Possibility for binary operators to yield types different from their operands'.
10 years ago
Christian
46664c44b3
Assertions that throw InternalCompilerErrors.
10 years ago
Lefteris Karapetsas
5eec2c5ac6
ForStatement typecheck and initExpression is a Statement
10 years ago
Lefteris Karapetsas
30c000d121
Adding a ForStatement solidity AST Node.
- Adding ForStatement node
- Implemented Parsing for ForStatement
- A simple parsing test for the ForStatement
- Work in progress
10 years ago
Christian
a3473ad88d
Check that constructor does not have "returns" directive.
10 years ago
Christian
5026c5855d
Create contracts.
10 years ago
Christian
37a15d96ea
Support empty strings.
10 years ago
Christian
781d58d705
String types.
10 years ago
Christian
d4d1369f6e
Move implementations of ::accept out of AST.cpp.
10 years ago
Christian
a03f2870c6
More const cleanup.
10 years ago
Christian
2506b42da8
Clear separation between ASTVisitor and ASTConstVisitor and more const specifiers.
10 years ago
Christian
169139a066
Const functions for ASTVisitor and const ASTPrinter.
10 years ago
Christian
8621949067
Import directive.
10 years ago
Christian
a2aa117a6b
Disallow assignments to structs and mappings.
10 years ago
Christian
d759075528
More general function types and references.
10 years ago
Christian
27d20cd849
Magic variables.
10 years ago
Christian
638960f22f
Contracts as types and framework for special global variables.
10 years ago
Christian
6ee07c2cb8
Convenience class for type members.
10 years ago
Christian
ad1a1f3ee2
We only care about member types.
10 years ago
Christian
bbc3a1b37e
Struct types.
10 years ago
Christian
ec2b010047
Mapping types.
10 years ago
Christian
104dd11456
Provide interface for calls in JSON and some other formatting changes.
10 years ago
Christian
e1c01722d4
Re-added some changes lost in merges.
10 years ago
Christian
bfafb32b0b
More information for type expectation errors.
10 years ago
Christian
5bd4640b17
Detect integer length from literals and remove "std::".
10 years ago
Christian
5dc7609c80
Minor cleanup.
10 years ago
Christian
052b74b1dc
Stylistic corrections.
10 years ago
Christian
37216a246a
Converted all asserts to exceptions.
10 years ago
chriseth
0f0a464b4e
Stylistic changes.
10 years ago
Christian
ea6d58a0d1
Contract compiler and also add ExpressionStatement to AST.
ExpressionStatement functions as glue between Statements and Expressions.
This way it is possible to detect when the border between statements and
expressions is crossed while walking the AST. Note that ExpressionStatement is
not the only border, almost every statement can contains expressions.
10 years ago
Christian
9ae4efd311
Bugfix: Allow empty return statements without type checking.
10 years ago
Christian
c6c7f86b82
Further const placement changes.
10 years ago
Christian
2b6d66374d
Compiler for assignments.
10 years ago
Christian
fd7fc4293e
Removed std:: where it made sense.
10 years ago
Christian
62ca0b2b43
Replace BOOST_ASSERT by assert.
10 years ago