Christian
a03ead264e
LValue refactoring.
10 years ago
Lefteris Karapetsas
9f85e14ead
LocationSetter in some extra places during Compiling
- Also adjusted the test, and fixed its error reporting
10 years ago
Lefteris Karapetsas
46fd746cd8
Changes after rebase on top of Array Parsing
10 years ago
Lefteris Karapetsas
45ef19046b
Reset CompilerContext's visited nodes at compile start
10 years ago
Lefteris Karapetsas
4c6bf04b87
Adding location information to assembly items
- In order to facilitate this addition we also now have a ScopeGuard
object used in the Compiler to set the currently visited node.
10 years ago
Christian
d417618dce
Stack height checks and fix.
10 years ago
Liana Husikyan
d66c448d82
corrected accept for variableDeclaration
changes after code review
10 years ago
Liana Husikyan
0a334cd7db
cosmetic changes
10 years ago
Liana Husikyan
87e956729c
Inline member initialisation
renamed VariableDefinition class to VariableDeclarationStatement
added tests
10 years ago
Christian
bed225c981
Calldata byte arrays stored on the stack.
10 years ago
Christian
cad718715b
Unpacking of dynamically sized arguments.
10 years ago
Christian
9ba105a763
Move code to loadFromMemory.
10 years ago
Christian
ed0384b759
No write access to parameters of external functions.
10 years ago
Christian
9be8307f22
Dynamic copy to memory.
10 years ago
Lefteris Karapetsas
6bb8233d15
Changing Solidity Code to use CamelCase enum values
10 years ago
Lefteris Karapetsas
4795991f2a
Code generation for mapping state variable accessor
- Work in progress
10 years ago
Christian
edefb95aae
Fallback functions.
10 years ago
Lefteris Karapetsas
93abe45771
FunctionType now returns const ref for Declaration
10 years ago
Lefteris Karapetsas
941a424e71
Minor fixes plus a rebase merge fix
10 years ago
Lefteris Karapetsas
122aada70f
Contract Interface Functions now return FunctionType
- Enchanced Function Type by declaration so that it can provide all the
required information at each place interface functions are consumed
- Changed all places where interface functions was used.
- Simplified Mix's FunctionDefinition code
10 years ago
Christian
7dc695e840
Super keyword.
10 years ago
Lefteris Karapetsas
2fcfb45760
Various fixes pertaining to State Variable accessors
10 years ago
Lefteris Karapetsas
309ffb8948
EVM Code for simple accessor function is properly generated
10 years ago
Lefteris Karapetsas
94ca9f0040
All interface functions are external.
10 years ago
Lefteris Karapetsas
10da71f90e
Solidity EntryLabel now uses a generic declaration
- Instead of a FunctionDefinition
10 years ago
Lefteris Karapetsas
06764f026e
State variable accessors code is now more organized
- FunctionDescription is the abstraction of what should describe a
function. It can either be a VariableDeclaration of a
FunctionDefinition.
- ParamDescription is what FunctionDescription uses to describe its
parameters for outside use purposes with a pair of (name, type)
strings
- Modified code around Solidity and especially interface handler to
adapt to this change
10 years ago
Lefteris Karapetsas
818742dac9
Work in progress for state variable accessors
- Changed the code so that a generic declaration with the combination of
a function type can be used wherer a function definition was used
before
- Since using an std::pair everywhere is really tiring with this commit
I am in the process of abstracting it into a function
10 years ago
Christian
c571eeea05
Call modifiers on constructor.
10 years ago
Christian
14c5e37d55
Modifier overrides and callgraph analysis.
10 years ago
Christian
fdf791149d
Compilation of function modifiers.
10 years ago
Christian
747bf7f2d4
Include virtual function overrides in constructor context.
10 years ago
Christian
813af2c4ee
Call constructors of base classes.
10 years ago
Christian
df44090ae6
Inheritance in compiler.
10 years ago
Christian
71950257c5
Magic variables are only needed durinng name and type resolution, not during compilation.
10 years ago
Lefteris Karapetsas
18dd4515bd
A first version of Natspec warning popup
- Runtime Contract code hash can now be retrieved from the Compiler
- Using the hash the Natspec handler stores and later retrieves Natspec
JSON for a given contract.
10 years ago
Christian
1e3929d5ad
Coding style: Prefix for const variables.
10 years ago
Christian
de77918d05
Padding for ABI types.
10 years ago
Lefteris Karapetsas
299305548f
Adjustments to Solidity compiler code for Function Hash
10 years ago
Lefteris Karapetsas
9fff09af6b
Compiler EVM generation now takes into account for the new function hash
identifier
- Changed tests to comply with the new function hash identifier
- Changed the function index offset to 4, and made it a constant for
easy adjustment in the future
10 years ago
Lefteris Karapetsas
69a0dcfa15
work in progress in testing the new function selector in the end to end tests
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
3c6e966160
Solidity ForStatement Compiler part
- Work in progress
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
4e83ba5ae1
Add functions needed by constructor.
10 years ago
Christian
7801b87ddb
Packing and unpacking of constructor arguments.
10 years ago
Christian
5026c5855d
Create contracts.
10 years ago
Christian
22fa12debf
Do not add at the end of the function selector "loop".
10 years ago
Christian
615438a890
Swap literals to the end if optimizing.
10 years ago
Christian
37a15d96ea
Support empty strings.
10 years ago
Christian
584242357a
Helper functions to access memory.
10 years ago