Commit Graph
100 Commits
Author SHA1 Message Date
chriseth 41aa3221df Moved Solidity files from cpp-ethereum 2015-08-19 12:41:46 +02:00
chriseth 1dbfb0350b Moved all Solidity files. 2015-08-19 12:41:16 +02:00
chriseth b1563878b6 Disallow comparison for reference types.
Fixes #2690
2015-08-07 17:50:54 +02:00
chriseth ab33328d1f Do not allow boolean operators for integers.
Fixes #2496
2015-08-07 17:50:07 +02:00
chriseth f1fa2734d0 Merge pull request #2697 from chriseth/sol_fix_clone
Fix clone with regards to value transfer.
2015-08-05 18:13:42 +02:00
chriseth 4ce09762c7 Merge pull request #2688 from chriseth/toBytesConversion
Allow explicit conversions bytes <-> string.
2015-08-05 17:19:19 +02:00
chriseth 3380c7c6c9 Merge pull request #2701 from chriseth/sol_fix_stringsAsKeysInMapping
Fix for strings as keys in mappings.
2015-08-05 15:59:44 +02:00
chriseth b5d37adfb5 Fix for strings as keys in mappings. 2015-08-04 16:59:37 +02:00
chriseth eab9585ea1 Fix clone with regards to value transfer. 2015-08-04 14:06:25 +02:00
chriseth 858e7b83b5 Version 0.1.1 2015-08-04 11:12:44 +02:00
chriseth 56d5c33106 Allow explicit conversions bytes <-> string. 2015-08-04 11:06:57 +02:00
chriseth 6daa27622a strings as mapping keys. 2015-08-03 18:10:08 +02:00
chriseth 2c476390ca Merge pull request #2677 from chriseth/sol_copyContract
Clone contracts
2015-08-03 16:12:12 +02:00
chriseth 943fd623e1 Create and output clone contracts. 2015-07-31 19:23:31 +02:00
chriseth ac1a11634e Improved gas computation for CALLCODE. 2015-07-28 13:37:46 +02:00
chriseth 54fa8ed7a6 Add BuildInfo.h as dependency. 2015-07-16 13:50:46 +02:00
chriseth 79a8effaa4 Merge pull request #2480 from chriseth/sol_relaxStackHeightCheck
Allow one additional stack slot.
2015-07-16 12:32:49 +02:00
chriseth 63d603bccc Merge pull request #2482 from chriseth/sol_fix_initialiseStorageStrings
Fix for initialising storage strings.
2015-07-16 12:31:24 +02:00
chriseth a2796c3d15 Allow structs containing mappings in memory. 2015-07-16 01:10:09 +02:00
chriseth 2ce6d3bcee Fix for initialising storage strings. 2015-07-15 22:13:27 +02:00
chriseth c7c5de4dd3 Allow one additional stack slot.
Fixes: #2478
2015-07-15 22:11:17 +02:00
chriseth 3d03e85e4e Check whether a literal is a valid literal before using it.
Fixes #2078
2015-07-14 17:43:13 +02:00
chriseth a01365a259 Improved error message for wrong argument count.
Fixes #2456
2015-07-14 16:54:18 +02:00
chriseth a3dace66e1 Fix comparison between bytes types.
Fixes #2087
2015-07-14 16:40:16 +02:00
chriseth 73275e1825 Use only a single stack slot for storage references. 2015-07-14 11:58:16 +02:00
chriseth 46dde467e7 Flexible string literals, convertible to bytesX, bytes and string. 2015-07-09 17:10:58 +02:00
chriseth 15dc5954c3 Versioning for Solidity. 2015-07-09 16:07:33 +02:00
chriseth aa6182ab87 Style and some assertion messages. 2015-07-03 18:15:05 +02:00
chriseth e2d6e34f9c Struct constructors. 2015-07-03 17:25:30 +02:00
chriseth 6059d20750 Fix for copying arrays to storage. 2015-07-03 17:25:30 +02:00
chriseth cad3379306 Memory structs. 2015-07-03 17:25:29 +02:00
chriseth ad459207a3 Fixed checking of abstract functions.
Fixes #2264
2015-06-30 11:55:21 +02:00
chriseth ee7ef675c3 Memory arrays cannot be resized. 2015-06-29 20:08:02 +02:00
chriseth 35540fcf2d Another compiler fix. 2015-06-29 13:23:02 +02:00
chriseth bdbe5a3cf8 Fix gcc issue. 2015-06-27 00:13:53 +02:00
chriseth fac8124412 Disallow memory types containing mappings. 2015-06-26 21:28:02 +02:00
chriseth 03edf74e62 No delete on storage pointers. 2015-06-26 21:28:02 +02:00
chriseth ca497f5d10 Delete for memory objects. 2015-06-26 21:28:02 +02:00
chriseth 109b4eafb9 Some fixes for calldata arrays. 2015-06-26 20:27:56 +02:00
chriseth 37e7f1f10d Do not copy reference types to memory in-place. 2015-06-26 19:15:00 +02:00
chriseth 342ca94866 Fixed and simplified external type computation. 2015-06-26 16:55:42 +02:00
chriseth 2e5c52bfab Merge pull request #2276 from chriseth/sol_memoryArrays7
Copy routines for non-byte arrays.
2015-06-25 18:52:19 +02:00
chriseth fb14a586f4 Merge pull request #2286 from chriseth/sol_simplerStaticMemoryAccess
Simplify static memory access functions.
2015-06-25 17:32:22 +02:00
chriseth 529ed468df Style. 2015-06-25 17:22:28 +02:00
chriseth b5672d5ae0 Simplify static memory access functions. 2015-06-25 14:52:59 +02:00
chriseth e5ae5955b9 Initialisation of memory types. 2015-06-24 19:34:43 +02:00
chriseth 1add48a652 Copy routines for non-byte arrays. 2015-06-24 12:18:19 +02:00
chriseth 2d169748b7 Copy only expected arguments for constructor if statically sized. 2015-06-24 00:23:46 +02:00
chriseth fd1a01bbce Decoding for constructor. 2015-06-22 20:55:46 +02:00
chriseth 8639cf8e3d Remove dynamic return types. 2015-06-22 20:50:47 +02:00
chriseth 2eabaa4716 Memory-storage copy. 2015-06-22 20:50:47 +02:00
chriseth ee520f6022 Fix and test for not really recursive structs.
Fixes #2223.
2015-06-18 16:37:06 +02:00
chriseth 1ff8dbebab Accessors for strings. 2015-06-17 14:25:00 +02:00
chriseth 17efc42299 Type conversion specialities for storage references. 2015-06-16 17:20:41 +02:00
chriseth a5664d0535 Style. 2015-06-16 11:28:35 +02:00
chriseth 8b402b5879 Copying between memory and memory.
Also fixed some encoding and padding issues with older copying code.
2015-06-15 19:47:44 +02:00
chriseth 7c996ac716 Style. 2015-06-15 14:40:42 +02:00
chriseth 6f7595e0e2 Pleased gcc. 2015-06-15 14:40:42 +02:00
chriseth 258b1a74e2 Distinction between storage pointer and storage ref and type checking for conversion between storage and memory. 2015-06-15 14:40:41 +02:00
chriseth d60ef3f2d7 Optimize RETURN x 0 to STOP. 2015-06-12 11:31:03 +02:00
chriseth c3caa2ce25 Added missing source locations for new memory management code. 2015-06-10 17:51:24 +02:00
chriseth e224a02826 Merge pull request #2122 from chriseth/sol_memoryArrays2
Use dynamic memory.
2015-06-10 15:36:30 +02:00
chriseth 6ad90719d8 Merge pull request #2114 from LianaHus/sol_byte0_in_storage
Sol removed bytes0
2015-06-10 15:35:28 +02:00
chriseth 3588709e4e Merge pull request #2126 from LianaHus/sol_Natspec_warnings_instead_of_exceptions
Some style fixes.
2015-06-10 11:25:59 +02:00
chriseth 9865a612a4 Improved type conversion error messages. 2015-06-09 11:57:52 +02:00
chriseth 02d5716944 Use dynamic memory for argument encoding. 2015-06-09 10:03:25 +02:00
chriseth 35ec81971a Dynamic memory. 2015-06-09 00:27:56 +02:00
chriseth c2a9419e49 Improved "Stack too deep" error message.
Closes #2080.
2015-06-07 12:51:15 +02:00
chriseth b51ef4a357 Merge pull request #2096 from chriseth/sol_constantFallback
Fallback takes constant amount of gas, and send no gas with send.
2015-06-06 00:45:47 +02:00
chriseth 779e793d60 Merge pull request #2084 from chriseth/sol_computeConstants
Compute constants
2015-06-05 19:22:30 +02:00
chriseth 651d755e56 Style. 2015-06-05 17:38:06 +02:00
chriseth 5a9d01b815 Bare functions return success condition. 2015-06-05 17:37:16 +02:00
chriseth 6667c67364 Fallback takes constant amount of gas, and send to gas with send. 2015-06-05 17:37:16 +02:00
chriseth 9efd5374ed Compute constants 2015-06-05 17:34:26 +02:00
chriseth 92eb04c6ec Style. 2015-06-05 14:45:47 +02:00
chriseth f4d1acc563 Ability to specify the storage location of a reference type. 2015-06-05 14:44:05 +02:00
chriseth 4987eec3d1 Merge pull request #2074 from LianaHus/sol_PosIntegerLiteralsConversation
Solidity Positive integer literals conversion to signed if in value range.
2015-06-05 11:15:09 +02:00
chriseth b7e5c1d9d2 Do not put duplicate labels for accessor functions. 2015-06-01 18:30:05 +02:00
chriseth 408fd7ab59 Merge pull request #1975 from LianaHus/sol_EVMExceptions
"error jump" instead of STOP instraction in case of exception
2015-06-01 17:45:55 +02:00
chriseth cf688ea738 Merge pull request #2027 from chriseth/sol_dupRemForLoops
Allow duplicate code removal for loops.
2015-06-01 15:09:16 +02:00
chriseth 6949ce97e4 Re-introduce string type. 2015-05-28 16:20:50 +02:00
chriseth 72e3e359aa Allow duplicate code removal for loops. 2015-05-28 14:48:07 +02:00
chriseth f7e3568c62 Merge pull request #2006 from chriseth/sol_functionalGasEstimator
Functional gas estimator
2015-05-26 15:48:10 +02:00
chriseth 6332bff81d Gas estimation for internal functions. 2015-05-26 11:27:59 +02:00
chriseth b85f66060f Sort keywords and add some reserved keywords. 2015-05-25 11:49:38 +02:00
chriseth 802d52f6a2 Functional gas estimator. 2015-05-22 16:12:40 +02:00
chriseth 44146e6674 Merge pull request #1979 from LianaHus/sol_constructorForSolAbi
Added constructor as part of Solidity ABI
2015-05-20 21:11:29 +02:00
chriseth 2be64c7026 Gas estimation taking known state into account. 2015-05-20 00:28:15 +02:00
chriseth 9c85254751 Merge pull request #1931 from chriseth/sol_callcode
Bare callcode for addresses and contracts.
2015-05-18 12:29:00 +02:00
chriseth 840d06fe14 Fixed error message about explicit type conversion. 2015-05-18 11:34:16 +02:00
chriseth dba5ffc280 Bare callcode for addresses and contracts. 2015-05-15 18:02:09 +02:00
chriseth 33e7086058 Succint interfaces. 2015-05-15 15:27:31 +02:00
chriseth da121c9a26 Reverse if and else body. 2015-05-12 17:50:51 +02:00
chriseth 2bdbeaac9b Merge pull request #1831 from chriseth/sol_newABIEncoding
New ABI encoding for dynamic types.
2015-05-11 12:27:24 +02:00
chriseth 69693f17f6 New ABI encoding for dynamic types. 2015-05-08 16:54:39 +02:00
chriseth 5d2c36603f Added assertions. 2015-05-07 11:14:07 +02:00
chriseth d8ddbeed2b Style. 2015-05-06 13:56:55 +02:00
chriseth c731ae92ca Use std::array. 2015-05-06 13:56:40 +02:00
chriseth c3e5fe6a12 Structural gas estimator. 2015-05-06 10:43:59 +02:00
chriseth ef26d96111 Fix for broken continue in for loop.
Fixes #1789.
2015-05-04 10:54:50 +02:00