Alex Beregszaszi
ee09d54525
Change FIXMEs into TODOs where appropriate
2019-01-29 00:35:23 +00:00
chriseth
e22a9ea5cf
Merge pull request #5883 from ethereum/fixInlineAssembly
...
Do not provide access to external assembly variables from within functions.
2019-01-28 15:12:43 +01:00
Alex Beregszaszi
9aafa32825
Disallow empty import statements
2019-01-28 13:52:15 +00:00
chriseth
64312584dc
Do not provide access to external assembly variables from within functions.
2019-01-28 14:42:38 +01:00
chriseth
e3791d6dcf
Fix reported packed encoded size for arrays and structs.
2019-01-23 11:13:22 +01:00
chriseth
ea292393a3
Merge pull request #5838 from maxsam4/useLiteralContent-patch
...
useLiteralContent data validation
2019-01-23 10:35:32 +01:00
Mudit Gupta
2f91781a80
useLiteralContent data validation
...
Squashed commit of the following:
commit bbceee6997c1b951eb6054f7d5b7560fe1773690
Author: Mudit Gupta <guptamudit@ymail.com>
Date: Tue Jan 22 23:27:49 2019 +0530
Removed extra check
commit 4f7c3cc58e94836b1dddcc5f2938da14adad6252
Author: Mudit Gupta <guptamudit@ymail.com>
Date: Tue Jan 22 17:51:05 2019 +0530
Updated test error message
commit 5da45f2a23840e7bb1978853e1c184faec65b3e0
Author: Mudit Gupta <guptamudit@ymail.com>
Date: Tue Jan 22 17:46:09 2019 +0530
Renamed test
commit e661418deac25f31c49091be3c80244f566fc14c
Author: Leonardo <leo@ethereum.org>
Date: Tue Jan 22 17:41:56 2019 +0530
Update libsolidity/interface/StandardCompiler.cpp
Co-Authored-By: maxsam4 <guptamudit@ymail.com>
commit d289b4dc1956ab736aada613e810cf2e2d124d4d
Author: Mudit Gupta <guptamudit@ymail.com>
Date: Tue Jan 22 17:29:40 2019 +0530
changed style
commit 5a7cf08db3027d75081d2e698dd51b807bef5abb
Author: Mudit Gupta <guptamudit@ymail.com>
Date: Tue Jan 22 17:20:37 2019 +0530
Added test case for missing useLiteralContent
commit 6e866c46aa92d6a89f2b341bd717c3886946f3ff
Author: Mudit Gupta <guptamudit@ymail.com>
Date: Tue Jan 22 17:09:30 2019 +0530
input check for useLiteralContent
2019-01-23 10:22:27 +05:30
chriseth
628d665474
Merge pull request #5843 from ethereum/abi-typos
...
Do not ignore revertOnFailure flag when validating Address/Contract
2019-01-22 18:44:09 +01:00
Alex Beregszaszi
3f2898ea47
Do not ignore revertOnFailure flag when validating Address/Contract
2019-01-22 14:45:08 +00:00
chriseth
01e87cfc08
Refactor struct encoder.
2019-01-22 14:45:25 +01:00
chriseth
7b66eb273d
Merge pull request #5832 from ethereum/introduceEncodingOptions
...
[REF] Provide ABI encoding options as single struct parameter.
2019-01-21 23:53:21 +01:00
chriseth
7a69455c13
Provide ABI encoding options as single struct parameter.
2019-01-21 16:43:32 +01:00
Leonardo Alt
7f8ceaadab
[SMTChecker] Clear state knowledge after external function calls
2019-01-21 12:58:40 +01:00
chriseth
f8e9aed839
Merge pull request #5717 from ethereum/smt_typecast
...
[SMTChecker] Support basic typecast without truncation
2019-01-21 12:35:07 +01:00
Daniel Kirchner
610ef9f199
Disallow calldata structs.
2019-01-21 10:30:57 +01:00
Alex Beregszaszi
7b759866cb
Merge pull request #5817 from ethereum/refactoring
...
Refactoring in TypeChecker and ContractDefinition
2019-01-18 11:36:49 +00:00
Daniel Kirchner
b7a86a124d
Refactor TypeChecker::visit(FunctionDefinition const&).
2019-01-18 12:12:23 +01:00
Daniel Kirchner
a766efc79f
Add ContractDefinition::isInterface.
2019-01-18 12:11:35 +01:00
chriseth
2ec997e697
Merge pull request #5775 from ethereum/codeAccess
...
Provide access to code of contract types.
2019-01-18 00:16:06 +01:00
chriseth
29f6aa7d56
Do not create a copy of the assembly.
2019-01-17 20:36:48 +01:00
chriseth
a9fa2658d8
Add helper to show if contract can be deployed.
2019-01-17 20:36:48 +01:00
chriseth
4669b06ab4
Warn if type(..).runtimeCode is used with assembly in the constructor.
2019-01-17 20:36:48 +01:00
chriseth
0bfdaa500a
Add code access dependency.
2019-01-17 20:36:48 +01:00
chriseth
e6fee257e6
Code generation for access to contract code.
2019-01-17 20:36:48 +01:00
chriseth
2fcfb216b5
Syntax for meta type information.
2019-01-17 20:36:48 +01:00
Leonardo Alt
83e7233bb8
Change error message and add tests
2019-01-17 14:28:03 +01:00
Leonardo Alt
c96b760c47
Return TypeError is fixed point encoding is attempted.
2019-01-17 13:36:53 +01:00
Leonardo Alt
a10db051de
[SMTChecker] Support basic typecast
2019-01-16 13:00:54 +01:00
Daniel Kirchner
0dfd4a726e
Warn about unreachable code.
2019-01-10 10:36:50 +01:00
chriseth
9222eff08f
Make the dialect available everywhere.
2019-01-07 16:41:03 +01:00
chriseth
ae08d7c375
Merge pull request #5681 from ethereum/limitOutput
...
Do not compile unless requested.
2018-12-19 17:02:28 +01:00
chriseth
4c7151e57f
Do not include empty JSON objects in output.
2018-12-19 14:59:29 +01:00
chriseth
beae2a608b
Only fully compile if binaries requested.
2018-12-19 12:58:17 +01:00
chriseth
4e89945d82
Some more compiler state tests.
2018-12-19 12:58:17 +01:00
Christian Parpart
62fe57479e
make use of C++ = default
constructor declarations as well as more non-static member initialization syntax.
2018-12-19 11:26:42 +01:00
Christian Parpart
d10bae245e
liblangutil: SourceLocation to default initialize data members (w/o the use of ctor)
...
See: http://isocpp.github.io/CppCoreGuidelines/CppCoreGuidelines#c45-dont-define-a-default-constructor-that-only-initializes-data-members-use-in-class-member-initializers-instead
2018-12-19 11:21:45 +01:00
chriseth
678a95f6e3
Merge pull request #5686 from ethereum/someStyle
...
Formatting.
2018-12-19 00:33:02 +01:00
chriseth
d8218b7eef
Formatting.
2018-12-18 23:50:39 +01:00
chriseth
20189c3f3b
Merge pull request #5637 from ethereum/better-json-error-reporting
...
Json: Provide better error message when 'settings' is not an object
2018-12-18 19:39:46 +01:00
Mathias Baumann
c43d96f2bf
Json: Provide better error messages for wrong types
2018-12-18 18:36:50 +01:00
chriseth
f5e52ef3c0
Merge pull request #5679 from ethereum/hashCache
...
Cache hash computations.
2018-12-18 18:23:27 +01:00
chriseth
e970590675
Merge pull request #5664 from ethereum/cmakeUpdates
...
Use imported CMake targets.
2018-12-18 17:45:23 +01:00
chriseth
bd52beedff
Cache hash computations.
2018-12-18 16:38:25 +01:00
Alex Beregszaszi
c2ec6d71b4
Add version pragma parsing to Parser
2018-12-18 15:02:35 +00:00
chriseth
4e475cdbe9
Merge pull request #5625 from ethereum/single-check
...
Do check for callvalue only once if no payable functions
2018-12-18 11:36:58 +01:00
chriseth
4b43aecaeb
Merge pull request #5671 from ethereum/sort_includes_interface
...
Sort includes in libsolidity/interface
2018-12-18 11:35:56 +01:00
Mathias Baumann
1b8570f829
Only generate sort/search code when interface functions exist
2018-12-17 21:24:37 +01:00
Leonardo Alt
7f41487ff6
Sort includes in libsolidity/parsing
2018-12-17 19:28:10 +01:00
Leonardo Alt
340ee4156d
Sort includes in libsolidity/interface
2018-12-17 19:24:42 +01:00
Leonardo Alt
cce377833a
Sort includes in libsolidity/formal
2018-12-17 18:26:10 +01:00
chriseth
7d3727bbf7
Merge pull request #5665 from ethereum/cmakeHeaders
...
Add headers to targets in CMakeLists.txt.
2018-12-17 17:47:38 +01:00
chriseth
9ab6133f85
Merge pull request #5667 from ethereum/sort_includes_codegen
...
Sort includes in libsolidity/codegen
2018-12-17 17:46:53 +01:00
Leonardo Alt
ab76676271
Sort includes in libsolidity/codegen
2018-12-17 17:06:11 +01:00
Leonardo Alt
b185d01a26
Sort includes in libsolidity/ast
2018-12-17 15:33:15 +01:00
Daniel Kirchner
2f698b6efe
Use imported CMake targets.
2018-12-17 15:15:11 +01:00
Daniel Kirchner
2353f73c39
Add headers to targets in CMakeLists.txt.
2018-12-17 15:01:02 +01:00
chriseth
332f914e4e
Merge pull request #5388 from ethereum/smt_mapping
...
[SMTChecker] Support for mapping
2018-12-17 14:09:52 +01:00
Leonardo Alt
36d8a98664
Sort includes in libsolidity/analysis
2018-12-17 12:35:16 +01:00
Leonardo Alt
9199718ec0
Clear all mapping knowledge after array variable assignment
2018-12-14 12:21:53 +01:00
Leonardo Alt
6a2809a582
[SMTChecker] Support to mapping
2018-12-14 12:21:53 +01:00
chriseth
6e205cc4e3
Merge pull request #5624 from ethereum/standard_json_unknown_keys
...
Disallow unknown JSON keys in standard-json
2018-12-13 09:58:34 +01:00
chriseth
b014732c81
Merge pull request #5638 from ethereum/header-guard
...
Add missing header guards
2018-12-12 18:41:58 +01:00
Leonardo Alt
8cd2ac8462
Disallow unknown JSON keys in standard-json
2018-12-12 17:32:42 +01:00
chriseth
87237281bf
Merge pull request #5630 from ethereum/warn_functions_empty_body
...
Supress unused var and state mut warnings for functions with empty body
2018-12-12 17:00:50 +01:00
Alex Beregszaszi
c863cbf80d
Add missing header guards
2018-12-12 15:47:05 +00:00
Leonardo Alt
508aae8a67
Disable state mutability warning for functions with empty body
2018-12-12 14:43:44 +01:00
Leonardo Alt
53537864a2
Disable unused var warning for functions with empty body
2018-12-12 14:43:44 +01:00
Daniel Kirchner
788612d2ef
Refactoring of the ControlFlowGraph and use for detecting all uninitialized storage accesses.
2018-12-12 04:20:53 +01:00
chriseth
fb3a0ac1c7
Codegen for object access.
2018-12-11 19:24:44 +01:00
chriseth
8d49e53995
Provide Dialect to EVMCodeTransform.
2018-12-11 19:24:31 +01:00
chriseth
9f86ede32d
Merge pull request #5454 from ethereum/smt_math_functions
...
[SMTChecker] Abstract math functions
2018-12-11 18:35:10 +01:00
chriseth
b5deca0383
Merge pull request #4779 from ethereum/optimise-string-literals
...
Decide better in storing string literals as data
2018-12-11 17:50:14 +01:00
Leonardo Alt
08737e43dc
[SMTChecker] Use SymbolicFunctionVariable for uninterpreted functions
2018-12-11 11:28:25 +01:00
chriseth
baaefb4b42
Merge pull request #5619 from ethereum/cleanup-abc
...
Some code cleanup
2018-12-10 19:22:02 +01:00
Mathias Baumann
2f6dc2e773
Replace push_back with emplace_back where it makes sense
2018-12-10 19:02:39 +01:00
Yi Huang
81f703427e
Add tests for implcit conversions from literals to fixed-point numbers.
2018-12-10 17:31:20 +01:00
chriseth
53f531ecb0
Set codecopy limit for data to 32 bytes.
2018-12-10 17:11:48 +01:00
chriseth
871ea22bb9
Merge pull request #5008 from liangdzou/yul_stack_reuse
...
Reuse stack slots in Yul codegen
2018-12-10 16:14:33 +01:00
liangdzou
362648a450
Reuse stack slots in Yul to EVM code generation.
2018-12-10 14:28:56 +01:00
Leonardo Alt
de46bb2c42
[SMTChecker] Introduce SymbolicFunctionVariable
2018-12-10 11:34:29 +01:00
Erik Kundt
e2395a3dcf
Adds more detailed type errors and tests.
2018-12-07 12:35:35 +01:00
Erik Kundt
b2afb8cdda
Adds an additional message to failing type conversions.
2018-12-07 11:55:53 +01:00
chriseth
6a9e8a6fe3
Merge pull request #4936 from ethereum/binSelect
...
Binary search for dispatch.
2018-12-07 00:55:09 +01:00
chriseth
4b2a64306a
Merge pull request #5587 from ethereum/yulCodeBuiltins
...
Builtin functions to access Yul objects.
2018-12-06 16:49:52 +01:00
chriseth
3fc118ba21
Analyze and compile sub-objects.
2018-12-06 14:32:04 +01:00
chriseth
f6ed29b88b
Extend abstract assembly to be able to handle sub-objects.
2018-12-06 14:32:04 +01:00
chriseth
4721cf332f
Expose EthAssemblyAdapter.
2018-12-06 14:32:04 +01:00
chriseth
0e8841005c
Merge pull request #5554 from ethereum/cp-SourceReferenceFormatter-refactor
...
[2/3] Refactor SourceReferenceFormatter (split-out data extraction & make use of new SourceLocation knowledge)
2018-12-06 14:01:39 +01:00
Christian Parpart
073b03d90c
liblangutil: refactor SourceReferenceFormatter, splitting out retrieval and making use of new SourceLocation's CharStream knowledge
2018-12-06 14:01:01 +01:00
chriseth
7f39c3e522
Binary search for dispatch.
2018-12-06 13:07:14 +01:00
chriseth
5fde279d2a
Merge pull request #5514 from corollari/develop
...
Remove unary + from the type system
2018-12-06 10:27:09 +01:00
Albert
df08d79623
Fix #5470
...
Remove unary + from the type system
2018-12-06 01:54:04 +01:00
chriseth
3a378eae1a
Restrict toHex to bytes
.
2018-12-05 22:37:05 +01:00
Kevin Kelley
fb6fd1b3c2
add a 'readable' format for large hex values
2018-12-05 22:15:02 +01:00
chriseth
63d67c7153
Merge pull request #5591 from ethereum/smt_simplify_sort
...
[SMTChecker] Simplify symbolic variables
2018-12-05 17:28:45 +01:00
Erik Kundt
e3accc6aa6
Simplifies Result<T> and prevents undefined behaviour.
2018-12-05 10:33:34 +01:00
Erik Kundt
05e74d096e
Introduces Result<T> for operator and implicit conversion type checks.
2018-12-05 10:33:34 +01:00
Leonardo Alt
b9f424e373
[SMTChecker] Simplify symbolic variables
2018-12-05 09:56:52 +01:00
chriseth
6efe2a5266
Merge pull request #5390 from ethereum/smt_one_loop
...
[SMTChecker] Unroll loops once
2018-12-05 09:23:19 +01:00
chriseth
c8e201e520
Provide Yul Object builtins.
2018-12-04 15:40:50 +01:00
chriseth
7ee1ddc172
Switch namespaces.
2018-12-04 15:36:03 +01:00
chriseth
0b1125281a
Remove some includes.
2018-12-04 15:31:00 +01:00
chriseth
3ebb78a886
Adjust include paths.
2018-12-04 15:20:29 +01:00
chriseth
0ec7a0e72c
Move AsmCodeGen.
2018-12-04 15:20:23 +01:00
Leonardo Alt
8069bb61da
[SMTChecker] Loops are unrolled once
2018-12-04 12:35:19 +01:00
chriseth
99db4e3ff4
Introduce the concept of builtin functions.
2018-12-04 12:06:33 +01:00
Anurag Dashputre
82f5763e7a
Fix internal compiler error for unimplemented base contract function.
2018-12-03 12:25:31 +01:00
chriseth
4b98946e5a
Merge pull request #5341 from ethereum/optimizeAssemblyCommandline
...
Apply the optimize commandline parameter to assembly mode.
2018-12-03 11:52:48 +01:00
chriseth
5897b14d63
Merge pull request #5568 from ethereum/smt_remove_unary_plus
...
[SMTChecker] Remove unary plus operator
2018-12-03 11:19:34 +01:00
chriseth
3f613a44ec
Merge pull request #5557 from ethereum/fixInterfaceImplementedByPublicStateVariable
...
Public state variables are implementing external functions.
2018-12-03 10:46:44 +01:00
chriseth
0668a9ecfb
Public state variables are implementing external functions.
2018-12-03 10:46:03 +01:00
Leonardo Alt
6d41ffb4a5
[SMTChecker] Remove unary plus operator
2018-12-03 10:35:38 +01:00
chriseth
aaeb74f592
Merge pull request #5537 from ethereum/cp-SourceLocation-related-refactoring
...
[1/3] SourceLocation related refactoring.
2018-11-30 23:45:31 +01:00
chriseth
6c44c5f0c9
Apply the optimize commandline parameter to assembly mode.
2018-11-30 23:39:05 +01:00
Christian Parpart
435f7b3b72
liblangutil: Scanner: remove superfluous sourceName field (it's in CharStream already)
...
Also, ParserBase::sourceName() was dead code. Eliminating it should
increase test coverage (how sneaky) :-)
2018-11-30 17:07:17 +01:00
Christian Parpart
c48a5264be
liblangutil: SourceLocation: adds (shared) pointer to underlying CharStream source, eliminating sourceName
...
Also, adapted affecting code to those changes.
2018-11-30 17:07:12 +01:00
chriseth
cc00d8172b
Merge pull request #5528 from ethereum/smt_sorts_virtual
...
[SMTChecker] Make smt::Sort::operator== virtual
2018-11-30 16:48:46 +01:00
chriseth
33d6a24c47
Move library related checks.
2018-11-30 16:30:20 +01:00
chriseth
4f992298c6
Move hash collisions checks.
2018-11-30 16:30:19 +01:00
chriseth
6d1644e55c
Move external type clash check.
2018-11-30 16:30:19 +01:00
chriseth
4f4f623273
Move fallback function checks.
2018-11-30 16:30:19 +01:00
chriseth
2a85152463
Move constructor checks.
2018-11-30 16:30:19 +01:00
chriseth
b610be4882
Rename functions.
2018-11-30 16:30:19 +01:00
chriseth
d1cc731843
No need to visit structs early.
2018-11-30 16:30:19 +01:00
chriseth
2c2c976697
Move base constructor argument checks.
2018-11-30 16:30:19 +01:00
chriseth
57a62429c9
Move abstract function check.
2018-11-30 16:30:19 +01:00
chriseth
89cf6a5a38
Move override checks.
2018-11-30 16:30:19 +01:00
chriseth
d054a3b85d
Move duplication checks.
2018-11-30 16:30:19 +01:00
chriseth
0bd9db480f
Add skeleton for contract level checker.
2018-11-30 16:30:19 +01:00
Leonardo Alt
2f6de12e8c
[SMTChecker] Make smt::Sort::operator== virtual
2018-11-30 10:41:15 +01:00
chriseth
d6d41b2bc7
Merge pull request #5548 from ethereum/fixMemberAccess
...
Fix bug related to state variables of function type accessed via base contract.
2018-11-30 09:26:08 +01:00
chriseth
c445e7dfa4
Disallow inline arrays of mapping type.
2018-11-29 19:45:06 +01:00
chriseth
73a64da041
Fix bug related to state variables of function type accessed via base contract.
2018-11-29 19:30:27 +01:00
chriseth
124a8def84
Merge pull request #5543 from ethereum/fixSortMOve
...
Fix move bug.
2018-11-29 16:13:24 +01:00
chriseth
9e9250c961
Fix move bug.
2018-11-29 15:32:38 +01:00
Leonardo Alt
67bbcefe6c
Report deprecation error on functions sha3 and suicide also without call.
2018-11-29 14:29:13 +01:00
Christian Parpart
22eff22492
liblangutil: extends CharStream to know about the respective (file-)name (and adapt codebase to it)
2018-11-29 12:45:27 +01:00
chriseth
f6d013237d
Merge pull request #5538 from hydai/static_uint256
...
Replace IntegerType(256) with static function IntegerType::uint256()
2018-11-29 11:17:33 +01:00
Leonardo Alt
1d47919c0c
Fix ICE when function type struct parameter has field of non-existent type
2018-11-29 10:38:47 +01:00
hydai
9326adc3db
Replace IntegerType(256) with static function IntegerType::uint256()
2018-11-29 17:07:18 +08:00
chriseth
b4086ac870
Merge pull request #5526 from ethereum/fixGetterNewCoder
...
Fix: Disallow structs in getters for old encoder.
2018-11-28 17:05:52 +01:00
chriseth
46f3da0b87
Properly check getter types to be old-abi-coder-compatible.
2018-11-28 14:08:25 +01:00
chriseth
5c0331a058
Merge pull request #5525 from ethereum/obsoleteComment
...
Remove obsolete comment.
2018-11-28 12:23:12 +01:00
chriseth
4fa47322f9
Remove obsolete comment.
2018-11-28 11:49:00 +01:00
chriseth
728119bb11
Use yul parser in assembly stack.
2018-11-27 15:59:57 +01:00
chriseth
e016cb99e6
Yul objects.
2018-11-27 15:59:57 +01:00
chriseth
240ad0e34e
Merge pull request #5382 from ethereum/libraryMappingPublic
...
Allow mapping arguments for public and external library functions.
2018-11-26 19:47:32 +01:00
chriseth
4d7799eed4
Properly disallow different return types for interface overloads with different visibilities.
2018-11-26 16:51:28 +01:00
chriseth
f937896727
Merge pull request #5445 from ethereum/publicExternalOverwrite
...
Allow overwriting external functions (with ``calldata`` arguments) with public functions (with ``memory`` arguments)
2018-11-26 16:50:40 +01:00
Daniel Kirchner
30e6f8d3fb
Allow mapping arguments for public and external library functions.
2018-11-26 16:31:46 +01:00
chriseth
f6d8810103
Merge pull request #5504 from ethereum/smt_fix_emscripten
...
[SMTChecker] Fix crash when SMTLib2Interface reports unknow for constant checks
2018-11-26 16:14:02 +01:00
chriseth
764d618c44
Merge pull request #5404 from ethereum/jumpFixes
...
Annotate jump from calldata decode to function as "jump in".
2018-11-26 16:08:04 +01:00
chriseth
a46d5c6580
Fix merge problem in CMake files.
2018-11-26 14:50:04 +01:00
chriseth
d950905a28
Merge pull request #5493 from ethereum/cmake-no-globbing
...
[WIP] CMake: Explicitly state which files to compile instead of relying on globbing
2018-11-26 14:45:35 +01:00
Christian Parpart
cdd8c72c9d
CMake: Explicitly state which files to compile instead of relying on globbing.
...
Also remove header file lists, as there is no need to add them to
add_library() or add_executable(), which should lower maintenance of the cmake files.
2018-11-26 14:39:24 +01:00
chriseth
5ec634939e
Use asCallableFunction for definition clashes in the same contract.
2018-11-26 14:30:32 +01:00
chriseth
36a369d077
Use asCallableFunction for external interface clash check.
2018-11-26 14:30:32 +01:00
chriseth
939365a1d5
Use callable types for override check.
2018-11-26 14:30:32 +01:00
chriseth
9a4968ba1d
Use asCallableFunction in override check (part 1).
2018-11-26 14:30:32 +01:00
chriseth
7921e5f0b9
Merge pull request #5486 from ethereum/allowExternalPublicOverride
...
Allow external public override
2018-11-26 14:26:55 +01:00
chriseth
9ac7c748f8
Merge pull request #5494 from ethereum/scanner-error-handling
...
Improved Scanner error diagnostics.
2018-11-26 14:17:08 +01:00
Leonardo Alt
aaaa92012c
[SMTChecker] Unknown answer for constant condition check should not do anything
2018-11-26 12:54:02 +01:00
chriseth
0b474d5299
Merge pull request #5497 from ethereum/langutil-SourceReferenceFormatter
...
Moving SourceReferenceFormatter into langutil namespace.
2018-11-26 12:44:25 +01:00
chriseth
0f0e466d36
Allow visibility change from external to public.
2018-11-26 12:41:26 +01:00
chriseth
bc137c2eeb
Merge pull request #5485 from ethereum/refactorCallableFunction
...
Refactor callable function
2018-11-26 12:34:43 +01:00
chriseth
0e08fb7469
Use "in" tag for jumps from unpacker to function.
2018-11-26 11:02:58 +01:00
Christian Parpart
e4106bd06e
Change scanner error diagnostics to be non-intrusive to the token API.
...
This also implicitly eliminates the magic-token Token::IllegalHex, and
streamlines error diagnostics over a custom enum class.
2018-11-24 12:40:51 +01:00
Christian Parpart
aeb66905de
Moving SourceReferenceFormatter into langutil namespace.
2018-11-24 12:33:36 +01:00
Lazaridis
e454737a3c
adapt to latest code changes
2018-11-23 17:27:52 +01:00
chriseth
9a94e503da
Merge pull request #5491 from ethereum/libyul-as-library
...
Libyul as static library (version 3 ;( )
2018-11-23 17:01:18 +01:00
Christian Parpart
ec47c8946b
Isolating libyul library API into its own namespace yul
.
2018-11-23 14:29:00 +01:00
Christian Parpart
3734f40d31
CMake: Isolate libyul into its own static library
2018-11-23 12:37:37 +01:00
Christian Parpart
713d94476e
Reorder some include files and group <libyul/>'s together (as much as possible)
2018-11-23 12:37:19 +01:00
Christian Parpart
0f4ed52a71
Rewrite header paths to adapt to recent git mv
of libsolidity/inlineasm to libyul
2018-11-23 11:18:57 +01:00
Christian Parpart
10e6d2897d
Moving files from libsolidity/inlineasm/*.{cpp,h} to libyul/.
2018-11-23 11:16:52 +01:00
Leonardo Alt
6251a289dd
Testing with smtlib2 interface always there
2018-11-23 09:43:49 +01:00
Leonardo Alt
dee0c4ded8
Error message stays in the SMTChecker
2018-11-23 09:43:49 +01:00
Leonardo Alt
f3c2309c73
Display better error message in SMTLib2
2018-11-23 09:43:49 +01:00
Leonardo Alt
f44be616c9
Renaming json fields smtlib2queries and smtlib2responses
2018-11-23 09:43:49 +01:00
chriseth
54bed454f6
Rename function and warn if responses are supplied for Z3.
2018-11-23 09:43:49 +01:00
chriseth
bb10be789c
Inject SMTLIB2 queries and responses via standard-json-io.
2018-11-23 09:43:49 +01:00
chriseth
d686807153
Style
2018-11-22 21:13:02 +01:00
chriseth
ecd059cb92
Merge pull request #5451 from ethereum/bound_function_tests
...
Add assert and tests for bound functions
2018-11-22 18:23:46 +01:00
chriseth
a781bda595
Correct style.
2018-11-22 17:15:25 +01:00
Leonardo Alt
ec84a7dc9b
[SMTChecker] Refactor setZeroValue and setUnknownValue
2018-11-22 16:42:51 +01:00
chriseth
62e801ed70
Use callable function for virtual resolution.
2018-11-22 15:48:12 +01:00
chriseth
92ba8a95f6
Make asCallableFunction to never fail and assert abount parameter size if bound instead.
2018-11-22 15:47:45 +01:00
chriseth
9e964852cc
Rename 'asMemberFunction' to widen its purpose.
2018-11-22 15:24:45 +01:00
Leonardo Alt
06189ae57f
Add assert and tests for bound functions
2018-11-22 14:41:39 +01:00
Leonardo Alt
20accf1a90
[SMTChecker] Add ArraySort and array operations
2018-11-22 14:04:20 +01:00
Leonardo Alt
13a142b039
[SMTChecker] Add FunctionSort and refactors the solver interface to create variables
2018-11-22 10:04:04 +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
Christian Parpart
80371e2d25
Ensure liblangutil is compiled and linked as its own static library.
2018-11-21 18:58:36 +00:00
Christian Parpart
87821c53c3
Isolating files shared between Yul- and Solidity language frontend.
2018-11-21 18:58:12 +00:00
Alex Beregszaszi
2c6e1888eb
Merge pull request #5466 from ethereum/smt_refactor_sort_patch1
...
[SMTChecker] Refactor smt::Sort and its usage
2018-11-21 15:17:58 +00:00
Leonardo Alt
01ce43e51b
[SMTChecker] Refactor smt::Sort and its usage
2018-11-21 15:46:47 +01:00
mordax
ea8b7d803e
Removing redundant virtual from override function declaration
...
Remove trailing whitespace
Remove changelog change
2018-11-21 14:37:32 +00:00
Leonardo Alt
06c3f0953a
[SMTChecker] Support bound function calls
2018-11-19 15:29:00 +01:00
Leonardo Alt
70bb0eaf95
[SMTChecker] Implement uninterpreted functions and use it for blockhash()
2018-11-15 09:12:42 +01:00
chriseth
727e3f24bc
Do not perform cleanup on unsigned integers when loading from calldata.
2018-11-14 20:52:30 +00:00