aboutsummaryrefslogtreecommitdiffstats
path: root/ExpressionCompiler.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Enum Value member access should now work properlyLefteris Karapetsas2015-02-141-8/+19
| | | | | - Also detection of duplicate enum values and tests for them have been added
* Enum type conversion and member value access.Lefteris Karapetsas2015-02-141-1/+11
| | | | | | - Added tests for the type conversion part. - Enum member value access still needs some work
* Copying structs.Christian2015-02-131-71/+94
|
* length member for byte arrays.Christian2015-02-121-0/+6
|
* Added some comments.Christian2015-02-121-2/+2
|
* Moved copy code to CompilerUtils.Christian2015-02-121-169/+17
|
* Copy storage to storage.Christian2015-02-121-7/+70
|
* Dynamic copy to memory.Christian2015-02-121-58/+88
|
* Simple copy of bytes to storage.Christian2015-02-121-20/+98
|
* add exponent operatorLu Guanqun2015-02-101-0/+3
| | | | https://www.pivotaltracker.com/n/projects/1189488/stories/83746404
* Arbitrary parameters for call() and all hash functions.Christian2015-02-101-10/+28
|
* Merge pull request #986 from LefterisJP/sol_StyleFixchriseth2015-02-101-93/+93
|\ | | | | Solidity enum style fix
| * Addressing issues in Enum style fixLefteris Karapetsas2015-02-101-5/+5
| |
| * LValueType of Expression Compiler is now CamelCaseLefteris Karapetsas2015-02-091-16/+16
| |
| * ExpressionCompiler's enums to CamelCaseLefteris Karapetsas2015-02-091-16/+16
| |
| * Camelcasing enums in Types.hLefteris Karapetsas2015-02-091-20/+20
| |
| * Changing Solidity Code to use CamelCase enum valuesLefteris Karapetsas2015-02-091-57/+57
| |
* | Some cleanup in "move to memory" functions.Christian2015-02-091-27/+17
|/
* Merge pull request #937 from LefterisJP/sol_MultiArgSHA3chriseth2015-02-091-17/+37
|\ | | | | Solidity multiple arg sha3
| * Small fixes in Types and ExpressionCompilerLefteris Karapetsas2015-02-071-2/+2
| |
| * Small fixes for proper multitype/multiarg SHA3Lefteris Karapetsas2015-02-071-1/+1
| |
| * SHA3 of string literals now should workLefteris Karapetsas2015-02-061-5/+6
| |
| * getRealType() introducedLefteris Karapetsas2015-02-061-1/+1
| |
| * appendArgumentsCopyToMemory() has more complicated logic nowLefteris Karapetsas2015-02-061-21/+27
| | | | | | | | - Plus other fixes.
| * Fixes after rebaseLefteris Karapetsas2015-02-061-2/+2
| |
| * Renaming a function for clarityLefteris Karapetsas2015-02-061-5/+5
| |
| * Solidity SHA3 can now take multiple argumentsLefteris Karapetsas2015-02-061-5/+18
| |
* | Accessors for structs.Christian2015-02-071-11/+36
|/
* Fixes for named-args.Gav Wood2015-02-041-15/+6
|
* Merge branch 'named-args' of https://github.com/guanqun/cpp-ethereum into ↵Gav Wood2015-02-041-2/+30
|\ | | | | | | guanqun-named-args
| * implement named argumentsLu Guanqun2015-01-301-2/+30
| |
* | Accessors for multiple mappings implementedLefteris Karapetsas2015-02-031-23/+22
| |
* | Simple mapping accessors workingLefteris Karapetsas2015-02-021-39/+14
| |
* | Code generation for mapping state variable accessorLefteris Karapetsas2015-02-011-8/+67
| | | | | | | | - Work in progress
* | Padding fixes.Christian2015-01-301-1/+1
| |
* | Whitespace and error messages.Christian2015-01-301-2/+2
| |
* | Code generation for events.Christian2015-01-301-28/+59
|/
* No longer exposing retrieveValueFromStorage() as a public functionLefteris Karapetsas2015-01-291-11/+11
| | | | - plus small fix in EndToEndTests
* Style changes.Christian2015-01-291-5/+7
|
* Super keyword.Christian2015-01-291-7/+17
|
* Various fixes pertaining to State Variable accessorsLefteris Karapetsas2015-01-291-6/+7
|
* EVM Code for simple accessor function is properly generatedLefteris Karapetsas2015-01-291-5/+10
|
* Work on ExpressionCompiler preparing for Accessors from storageLefteris Karapetsas2015-01-291-19/+36
|
* - cosmetic changesliana2015-01-271-15/+12
|
* -redesigned appendTypeConversion functionliana2015-01-271-35/+37
|
* - modifications according to PR reviewliana2015-01-261-16/+18
|
* - corrected assertliana2015-01-241-1/+1
|
* - added conversion for string/hash of equal sizesliana2015-01-241-2/+28
| | | | - added tests
* Explicit calls to base class function.Christian2015-01-201-8/+26
|
* Inheritance in compiler.Christian2015-01-201-1/+1
|
* Some addition to Solidity Execution FrameworkLefteris Karapetsas2015-01-191-3/+1
|
* Merge pull request #805 from LianaHus/deleteStructchriseth2015-01-191-23/+67
|\ | | | | | | | | delete for structs -added functionality to set values to 0 when deleting structure(not for ...
| * - corrected delete in case we have more than one localsliana2015-01-161-2/+2
| | | | | | | | - added a test
| * removed spacesliana2015-01-161-2/+2
| |
| * Corrected "delete" for local variables i.e. set them to 0liana2015-01-161-3/+4
| | | | | | | | Added test case
| * - added functionality to set values to 0 when deleting structure(not for ↵liana2015-01-151-23/+66
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | mapping) - added unit test Made some changes after Christian`s review on pull request - remove/edit comments - BoolType and ContractType return VoidType after delete - fixed constructor_arguments test - fixed set to 0 when deleting variable from stack - changed test case to test that
* | Merge branch 'develop' of github.com:ethereum/cpp-ethereum into developGav Wood2015-01-161-78/+128
|\ \ | | | | | | | | | | | | Conflicts: libsolidity/Types.h
| * | Update ExpressionCompiler.cppLefteris Karapetsas2015-01-151-2/+1
| | |
| * | Fixing an unused parameter warning in ExpressionCompilerLefteris Karapetsas2015-01-151-0/+1
| | |
| * | Style.Christian2015-01-141-1/+0
| | |
| * | More flexible access to stack during external function call.Christian2015-01-141-5/+12
| | |
| * | Use min gas for send().Christian2015-01-141-3/+5
| | |
| * | Specify value for contract creation.Christian2015-01-141-47/+55
| | |
| * | Modify gas and value for external function call.Christian2015-01-141-32/+66
| |/
* / Add blockhash to Solidity.Gav Wood2015-01-161-0/+7
|/ | | | Autopadding fix.
* More convenient function type construction.Christian2015-01-121-1/+1
|
* Merge pull request #768 from chriseth/sol_contractsAreAddressesGav Wood2015-01-111-19/+44
|\ | | | | Contracts inherit all address members
| * Contracts are Addresses.Christian2015-01-101-8/+12
| |
| * Correct type conversions.Christian2015-01-101-13/+34
| |
* | Coding style: Prefix for const variables.Christian2015-01-101-30/+32
| |
* | Padding for ABI types.Christian2015-01-101-15/+12
|/
* Merge pull request #765 from chriseth/sol_someLogFixesGav Wood2015-01-091-47/+9
|\ | | | | Some changes to the log functions.
| * Some changes to the log functions.Christian2015-01-091-47/+9
| |
* | Arbitrary precision integer constants.Christian2015-01-091-12/+30
|/
* Merge pull request #754 from LefterisJP/sol_abiFunctionHashchriseth2015-01-091-6/+11
|\ | | | | Calculation of ABI Function Identifier Hash
| * Adjustments to Solidity compiler code for Function HashLefteris Karapetsas2015-01-091-2/+2
| |
| * merging developLefteris Karapetsas2015-01-091-1/+1
| |\
| * | Compiler EVM generation now takes into account for the new function hashLefteris Karapetsas2015-01-091-6/+11
| | | | | | | | | | | | | | | | | | | | | | | | 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
* | | Basic logging in Solidity (though no tests yet).Gav Wood2015-01-091-0/+55
| |/ |/|
* | Bugfix: Use parameter (not argument) type size on stack for function calls.Christian2015-01-071-1/+1
|/
* BLOCKHASHGav Wood2015-01-051-3/+3
|
* Bugfix: Additional swap for compound assignment.Christian2014-12-191-0/+2
|
* Assertions that throw InternalCompilerErrors.Christian2014-12-171-20/+13
|
* Create contracts.Christian2014-12-151-0/+38
|
* Correctly check for string prefix plus indentation change.Christian2014-12-151-1/+1
|
* Calls to bare contracts.Christian2014-12-131-56/+66
|
* Merge remote-tracking branch 'ethereum/develop' into sol_swapConstantsChristian2014-12-131-16/+24
|\ | | | | | | | | Conflicts: test/solidityOptimizerTest.cpp
| * Merge remote-tracking branch 'ethereum/develop' into sol_stringsChristian2014-12-111-19/+19
| |\ | | | | | | | | | | | | Conflicts: libsolidity/Types.cpp
| * | Helper functions to access memory.Christian2014-12-111-21/+15
| | |
| * | String types.Christian2014-12-101-4/+18
| | |
* | | Swap literals to the end if optimizing.Christian2014-12-121-6/+20
| |/ |/|
* | Merge pull request #577 from chriseth/sol_constCleanupchriseth2014-12-111-19/+19
|\ \ | |/ |/| Solidity const cleanup
| * Clear separation between ASTVisitor and ASTConstVisitor and more const ↵Christian2014-12-081-1/+1
| | | | | | | | specifiers.
| * Const AST visitor for the compiler.Christian2014-12-081-18/+18
| |
* | Const change.chriseth2014-12-101-1/+1
| |
* | Variable-size stack elements for expression compiler.Christian2014-12-091-15/+53
| |
* | Calling functions of other contracts.Christian2014-12-081-53/+86
|/
* Warning fix.Gav Wood2014-11-281-1/+1
| | | | ECDSA recover fix.
* Global functions.Christian2014-11-261-10/+45
|
* Sending ether.Christian2014-11-261-23/+56
|
* More general function types and references.Christian2014-11-261-5/+5
|
* Access to blockchain data.Christian2014-11-241-3/+28
|
* Magic variables.Christian2014-11-241-28/+57
|
* Contracts as types and framework for special global variables.Christian2014-11-241-3/+11
|
* Convenience class for type members.Christian2014-11-241-4/+1
|
* Struct types.Christian2014-11-141-4/+13
|
* Mapping types.Christian2014-11-141-59/+118
|
* Merge remote-tracking branch 'ethereum/develop' into sol_stateVariablesChristian2014-11-101-33/+19
|\ | | | | | | | | Conflicts: libsolidity/ExpressionCompiler.cpp
| * Evaluate expressions in convenient order.Christian2014-11-071-32/+19
| |
* | State variables.Christian2014-11-081-48/+79
|/
* Removed superfluous braces.chriseth2014-11-071-2/+0
|
* Re-added some changes lost in merges.Christian2014-11-071-2/+1
|
* Stylistic changes.chriseth2014-11-071-2/+0
|
* Type promotion fixes and tests.Christian2014-11-061-11/+5
|
* Proper type promotion and conversion.Christian2014-11-061-27/+54
|
* Allow implicit type conversions for comparisons.Christian2014-11-061-14/+7
|
* Converted all asserts to exceptions.Christian2014-11-051-29/+29
|
* Some tests and bugfixes for the compiler.Christian2014-11-031-0/+1
|
* Bugfix: Swap before mod and div.Christian2014-11-031-2/+2
|
* Merge remote-tracking branch 'ethereum/develop' into sol_contractCompilerChristian2014-11-011-6/+6
| | | | | | | | | | | | Conflicts: libsolidity/AST.cpp libsolidity/AST.h libsolidity/Compiler.cpp libsolidity/Compiler.h libsolidity/NameAndTypeResolver.h libsolidity/Types.cpp solc/main.cpp test/solidityCompiler.cpp
* Renamed file.Christian2014-10-311-0/+1
|
* Contract compiler and also add ExpressionStatement to AST.Christian2014-10-301-0/+408
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.