49 Commits
Author SHA1 Message Date
Harikrishnan Mulackal 7773bb3bd0 Fix typo: storage 2020-10-02 11:44:10 +02:00
Djordje Mijovic 1fab5b79fb Refactoring signature for updateStorageValueFunction 2020-09-02 12:28:53 +02:00
Djordje Mijovic 23f6369a46 Implementing struct copying from calldata to storage 2020-09-02 12:28:53 +02:00
chriseth 9be5ed1220 Merge remote-tracking branch 'origin/develop' into breaking 2020-07-21 11:35:28 +02:00
Sachin Grover b7adb2aa42 Add SPDX license identifier if not present already in source file
Fixes: #9220
2020-07-17 20:24:12 +05:30
chriseth ab68406006 Merge remote-tracking branch 'origin/develop' into breaking 2020-07-06 15:25:25 +02:00
Bhargava Shastry 1a0391bceb Fuzzer: Add a specialized StackTooDeepError Exception that is caught in the fuzzing harness 2020-07-01 11:08:20 +02:00
Harikrishnan Mulackal d41eaeba56 Added containsNestedMapping() 2020-06-30 16:15:03 +05:30
Daniel Kirchner 77ea896b68 Properly handle assignments of immutables at declaration. 2020-04-02 08:35:22 +02:00
Daniel Kirchner 04d8ad2ae1 Legacy codegeneration for immutable state variables. 2020-03-24 16:45:25 +01:00
Alex Beregszaszi 1d7f25e809 Remove unnecessary statement 2020-01-15 14:33:27 +00:00
Christian Parpart 6b23412fae C++ namespace cleanup (except tests). 2020-01-07 15:51:50 +01:00
Erik Kundt ecaed1030f Makes array length access read-only. 2019-11-19 16:09:21 +01:00
chriseth 5b1a984882 Explicitly turn uninitialized internal function pointers into invalid function when loaded from storage. 2019-05-27 17:26:37 +02:00
mingchuan bf8af89bba Fix assignment of struct containing array of mappings 2019-05-25 01:33:49 +08:00
Christian Parpart 721bf367a3 [libsolidity] TypeProvider: eliminate redundant "Type" suffix in provider function signatures. 2019-04-17 14:42:07 +02:00
Christian Parpart bf43eebea9 libsolidity: Introducing TypeProvider API, for clear type system ownership. 2019-04-16 18:26:45 +02:00
chriseth 2308904f68 Remove "using namespace" from header and move Instruction to dev::eth. 2019-03-28 13:48:11 +01:00
Daniel Kirchner 8ca6715e18 More style checks. 2019-02-14 11:41:20 +01:00
Leonardo Alt ab76676271 Sort includes in libsolidity/codegen 2018-12-17 17:06:11 +01:00
Christian Parpart d67322a186 Introduce namespace langutil in liblangutil directory.
Also:
- Use {}-style list initialisation for SourceLocation construction
- Introduce new system includes
- Changes the API of the Scanner to take source as value (with move) as opposed to as a reference
2018-11-21 19:13:44 +00:00
chriseth c14dfeb8c5 Removed unreachable cases in LValue.cpp. 2018-10-17 22:17:33 +02:00
chriseth 2968639406 Removed signed shift right from the utilities. 2018-04-30 20:34:43 +01:00
Alex Beregszaszi d261265595 Use shift helper in LValue 2017-07-02 23:40:51 +01:00
Alex Beregszaszi 3ae88377d6 Change references to FunctionType::Location 2017-03-16 12:49:52 +00:00
Yoichi Hirai fb9babce54 codegen: truncate booleans before they enter storage 2016-11-30 17:41:51 +01:00
Yoichi Hirai 548b7ce42d codegen: storing of non-value types; add some assertions 2016-11-25 15:45:18 +01:00
Yoichi Hirai 9d25b5601e codegen: merge type conversion and cleaning up 2016-11-25 15:45:18 +01:00
Yoichi Hirai ea628001d5 codegen: add an option to CovertType so that it can truncate sign bits 2016-11-25 15:45:16 +01:00
Yoichi Hirai 56d6641086 codegen: cleanup stored values in a more consistent way 2016-11-25 15:44:36 +01:00
Yoichi Hirai 5b8a773986 codegen: cleanup value types before storing them 2016-11-24 11:31:45 +01:00
VoR0220 3f9f725737 Fix licensing headers
Signed-off-by: VoR0220 <rj@erisindustries.com>
2016-11-23 12:22:33 +01:00
chriseth e1df3bd77f Fix tests. 2016-11-16 14:37:18 +01:00
chriseth 47794c1da4 Implement uninitialized storage functions. 2016-11-16 14:37:18 +01:00
chriseth cc847df3c2 Bugfix in code generator. 2016-11-16 14:37:18 +01:00
chriseth ff3553a348 Change alignment. 2016-11-16 14:37:18 +01:00
chriseth 95d7555e3c External functions in storage. 2016-11-16 14:37:17 +01:00
Rhett Aultman 58e75c7a48 Unimplemented features moved to their own exception (#1361)
Unimplemented features moved to their own exception

InternalCompilerError is an exception that really should be reserved for
actual internal errors of the compiler.  Unimplemented features can now
use either solUnimplemented( ) or, if it should be conditional, then
solUnimplementedAssert( ).

* Revert some unimplemented exceptions, add handlers

The jsonCompiler and CommandLineInterface needed handlers for the
new UnimplementedFeatureException, and some cases I had moved on to
the new exception were better treated as real internal compiler
errors.

* Standardize on "Unimplemented feature" message
2016-11-14 20:41:58 +00:00
chriseth 9920e88eea Clear all value types prior to storing. 2016-10-31 16:40:30 +01:00
Nicolai c800f8c97d Remove the remains of "expresison" 2016-07-14 22:56:45 +02:00
chriseth d4206b7cd0 Remove unused tests and add asserts for not implemented parts in code generation.
quick fix on christian's rational

change so that ubuntu will stop yelling

be more specific with rational declaration for Windows sake

rational in namespace correction for windows
2016-05-10 16:03:33 -05:00
VoR0220 82039b732e added bytes conversion tests, resolved that, converted to binary scaling, refactored the find algo to prevent large numbers and take into account integer bytes
think we're good on solidity type name resolution now

removed couts

updates to documentation and more removed couts along with literal value implementation

forgot semicolons
2016-05-09 11:41:03 -05:00
RJ Catalano 9a075458ad initial work for fixed types...potentially needing a constant literal type for this
notation

Rational implemented...trying to figure out exponential

fix for token bug, also quick fix for the wei and seconds

fixed problem with var...probably a conversion problem for fixed in size capabilities

adding fixed type tests

Removing bitshift and regrouping fixed type tests together

size capabilities functioning properly for fixed types

got exponents up and working with their inverse, changed a few of the tests....something is working that likely shouldn't be

slight changes to how to flip the rational negative around...still trying to figure it out

tests added

updated tests

odd differences in trying soltest from solc binary, let me know if you can replicate

test not working for odd reason

fixed test problem with fixed literals...still need a way to log this error

broken up the tests, added some, changed some things in types and began compiler work

moar tests and prepping for rebuilding much of the types.cpp file

further fixing

initial work for fixed types...potentially needing a constant literal type for this
2016-05-09 11:41:02 -05:00
Dimitry d2cee6f9c6 reduce unnecessary solidity:: namespace 2016-04-04 15:41:35 +04:00
Dimitry 858c41260d rename namespace for instruction.h/cpp in libevmasm 2016-04-02 15:56:43 +03:00
Dimitry ccbd3ff63f move libevmcore to solidity 2016-04-01 23:11:01 +03:00
chriseth 86495dfc57 Make members context-sensitive. 2015-11-26 15:37:55 +01:00
chriseth 0c900f9b8a Fix memory overwrite problem for arrays. 2015-11-16 18:32:21 +01:00
chriseth e3dffb611f File reorganisation. 2015-10-21 00:46:01 +02:00