Daniel Kirchner
e58a1de57f
Merge pull request #8431 from mijovic/sol2YulSelectorAddress
...
Adding sol->yul for f.selector and f.address
2020-03-06 22:48:38 +01:00
Djordje Mijovic
092827b7ad
Adding sol->yul for f.selector and f.address
2020-03-06 21:43:14 +01:00
Daniel Kirchner
2df5ca0774
Merge pull request #8385 from ethereum/immutable
...
Immutable state variables (1)
2020-03-06 14:20:13 +01:00
Daniel Kirchner
7f38cbb91d
Fix calling unimplemented base function.
2020-03-06 10:51:16 +01:00
Daniel Kirchner
420f57aec3
Fix yul ast import for blocks, switches and string literals.
2020-03-05 14:09:13 +01:00
Bhargava Shastry
7483c6f13e
ossfuzz: Update README.md with steps to build fuzzers via docker
2020-03-05 10:43:31 +01:00
Daniel Kirchner
b10f12a395
Merge pull request #8413 from mijovic/depratateValueCalls
...
Deprecated warning for .value() and .gas() on function and constructr…
2020-03-04 14:43:06 +01:00
Daniel Kirchner
919888ddbc
Use yul function for calldata tail access, fix checks and add additional revert reason.
2020-03-04 14:39:36 +01:00
Christian Parpart
a3bc752e53
Merge pull request #8415 from ethereum/tests-ExecutionFramework-reset
...
[test] Fixes ExecutionFramework providing different contract addresse…
2020-03-04 14:17:11 +01:00
Djordje Mijovic
58c6b90705
Deprecated warning for .value() and .gas() on function and constructror calls
2020-03-04 12:51:49 +01:00
Christian Parpart
495abee769
[test] Fixes ExecutionFramework providing different contract addresses when running test cases for both, old and new yul codegen.
2020-03-03 16:36:12 +01:00
Leonardo
32ca1a5e26
Merge pull request #8311 from ethereum/smt_split_2
...
[SMTChecker] Change CHC encoding from explicit CFG to function forests
2020-03-03 13:16:14 +01:00
Leonardo Alt
3bee348525
Change CHC encoding to functions forest instead of explicit CFG
2020-03-03 12:12:26 +01:00
Leonardo Alt
96a230af50
[SMTChecker] Fix ICEs with tuples
2020-03-03 11:35:58 +01:00
chriseth
f10c6500b2
Immutable is not reserved anymore.
2020-03-02 14:20:17 +01:00
Bhargava Shastry
ed02aae1d9
Update solidity fuzzing dictionary with >0.6.0 keywords
2020-02-28 15:46:21 +01:00
chriseth
06ad5b3200
Merge remote-tracking branch 'origin/develop' into HEAD
2020-02-27 15:06:36 +01:00
Erik Kundt
d1b6a4a649
Fixes raw bytes warning in semantic test framework.
2020-02-26 21:37:52 +01:00
chriseth
426c4a2e38
Merge pull request #8327 from imapp-pl/yul-phaser-random-algorithm
...
[yul-phaser] Random algorithm
2020-02-26 14:44:24 +01:00
Leonardo
6930e0c2e0
Merge pull request #8384 from ethereum/fixRePrintingValue
...
Fix re-printing value expectations.
2020-02-26 09:57:30 +01:00
chriseth
bb09787bd0
Merge pull request #8378 from mijovic/yulSourceLocations
...
Adding source location support to AssemblyStack
2020-02-25 22:34:57 +01:00
Djordje Mijovic
ec083c4878
Adding source location support to AssemblyStack and thus debugging Yul sources
2020-02-25 22:19:03 +01:00
chriseth
c5a0a434e2
Merge pull request #8374 from ethereum/writeAccessToSlot
...
Allow access to ``_slot`` for local storage pointer variables.
2020-02-25 22:11:13 +01:00
chriseth
40cae442d5
Fix re-printing value expectations.
2020-02-25 22:10:35 +01:00
Kamil Śliwak
e1b8b64f05
[yul-phaser] Population: Remove no longer used methods for running algorithm steps
...
- They have been superseded by objects from GeneticAlgorithms.h
2020-02-25 16:06:16 +01:00
cameel
67fbafab8f
[yul-phaser] Add RandomAlgorithm
2020-02-25 16:06:16 +01:00
cameel
4665b7a7e4
[yul-phaser] Population: Add select() method
2020-02-25 15:25:16 +01:00
cameel
83b8ab8012
[yul-phaser] Add RangeSelection, MosaicSelection and RandomSelection classes
2020-02-25 15:25:16 +01:00
cameel
11bdf358df
[yul-phaser] Base class for genetic algorithms
2020-02-25 15:25:16 +01:00
Kamil Śliwak
26bae6b459
[yul-phaser] Common: Add countSubstringOccurrences()
2020-02-25 15:25:16 +01:00
chriseth
45041e5d3a
Allow access to `_slot
` for local storage pointer variables.
2020-02-25 14:28:04 +01:00
Djordje Mijovic
8524e3f48d
Standard-JSON-Interface: Fix a bug ( #8371 ) related to empty filenames and imports.
2020-02-25 01:07:36 +01:00
Leonardo
44bcff42f5
Merge pull request #8161 from ethereum/yulTypeChecking
...
Yul type checking
2020-02-24 16:05:04 -03:00
Djordje Mijovic
c891597204
Adding ssa type check and test for that one
2020-02-24 15:05:19 +01:00
Djordje Mijovic
2efda4129b
Adding test for multi return values including bool in evmTyped dialect. Calling zeroLiteralForType from inliner
2020-02-24 15:05:19 +01:00
chriseth
bddbcbe6a4
Use bool type in word size transform.
2020-02-24 15:05:19 +01:00
chriseth
a52305d3bd
Use bool type in conditional simplifier and for loop condition into body.
2020-02-24 15:05:19 +01:00
Djordje Mijovic
a52c9af5b9
Adding vardecl optimization for boolean types
2020-02-24 15:05:19 +01:00
chriseth
b9b36cd89e
Properly assign types in ExpressionSplitter.
2020-02-24 15:05:19 +01:00
chriseth
2ee748b7f5
Add tests
2020-02-24 15:05:19 +01:00
chriseth
9140bc52c4
Tests for invalid types.
2020-02-24 15:05:18 +01:00
chriseth
6eec968365
Test updates.
2020-02-24 15:05:18 +01:00
chriseth
449a8533ce
Merge pull request #8340 from mijovic/value-keyword-wei
...
TestFileParser: Adding keyword wei for expressing function call value
2020-02-24 15:01:15 +01:00
Djordje Mijovic
dd9009eba6
TestFileParser: Adding new keyword wei for expressing function value
2020-02-21 11:39:37 +01:00
cameel
2291cf78ac
[yul-phaser] Population: Add constructors to Individual to simplify initialization
2020-02-19 17:26:34 +01:00
cameel
cef01c961a
[yul-phaser] Population: Keep the individuals always sorted
2020-02-19 17:26:34 +01:00
cameel
76842ac3fd
[yul-phaser] Population: Evaluate fitness immediately when an individual is added or modified
...
- This removes the explicit evaluation phase.
- Fitness is no longer optional in Individual
2020-02-19 17:26:34 +01:00
cameel
66fdc1c374
[yul-phaser] Population: Store fitness metric rather than program directly
...
- In the console app use ProgramSize metric when creating the population.
2020-02-19 17:03:35 +01:00
Kamil Śliwak
930a9918a6
[yul-phaser] ProgramSize: Add an option to repeat the optimisation sequence several times
2020-02-19 16:36:14 +01:00
Kamil Śliwak
751caf0ed3
[yul-phaser] Common: Add ChromosomeLengthMetric
2020-02-19 16:36:14 +01:00
cameel
2238919c76
[yul-phaser] Add ProgramSize metric
2020-02-19 16:36:14 +01:00
cameel
096129fbc4
[yul-phaser] Base class for fitness metrics
2020-02-19 16:36:14 +01:00
chriseth
357c936243
Merge pull request #8325 from imapp-pl/yul-phaser-population-tweaks
...
[yul-phaser] Miscellaneous Population tweaks and improvements
2020-02-19 12:35:10 +01:00
chriseth
8f2c5fc081
Merge pull request #8287 from a3d4/cmdlinetests-mingw
...
Adapted cmdlineTests.sh for MinGW
2020-02-19 11:50:24 +01:00
a3d4
4a29726f76
Adjusted solc path and fixed remapping tests in cmdlineTests.sh under mingw64.
2020-02-19 06:05:11 +01:00
cameel
d9c5e2dc9f
[yul-phaser] Population: Add operator+()
2020-02-18 19:40:37 +01:00
Kamil Śliwak
ecb30c670f
[yul-phaser] Population: Make ordering of individuals with same fitness deterministic and prioritise shorter chromosomes
...
- Before this change the order of chromosomes with the same fitness in a population depended on the initial order set when the population was first created. Now it only depends on the individual.
- The length comparison is not strictly necessary (lexicographical order covers that) but it makes the intention clear and the comparison slightly faster when chromosomes have different lengths.
2020-02-18 19:40:37 +01:00
Kamil Śliwak
40a6669538
[yul-phaser] Population: Extract a function for comparing fitness of individuals
...
- Mostly for readability and convenience. This significantly shortens calls to sort().
- I could define it as Individual::operator< instead but it would be inconsistent with operator== because it does not compare the chromosomes, only fitness. It could result in an unintuitive situation where (a <= b <= a) does not necessarily imply (a == b).
2020-02-18 19:40:37 +01:00
Kamil Śliwak
823e715902
[yul-phaser] Population+Chromosome: Better tests for makeRandom()
2020-02-18 19:40:37 +01:00
Kamil Śliwak
806891f494
[yul-phaser] Population: Customizable chromosome length in makeRandom()
2020-02-18 19:40:37 +01:00
Kamil Śliwak
e771f00971
[yul-phaser] Population: Extract Program construction in tests into a fixture
2020-02-18 19:38:55 +01:00
Kamil Śliwak
d22c59aa0e
[yul-phaser] Chromosome: Add a constructor that reads steps from an abbreviation string
2020-02-18 19:38:55 +01:00
Kamil Śliwak
38f79a1761
[yul-phaser] Common: Add chromosomeLengths()
2020-02-18 19:38:55 +01:00
Kamil Śliwak
837ea96da7
[yul-phaser] Move stripWhitespace() from Program tests to Common
2020-02-18 19:38:55 +01:00
chriseth
c2e22d4cab
Merge pull request #8221 from ethereum/structured-docs-error-locations
...
[parser] Source locations for structured documentation errors
2020-02-18 14:57:28 +01:00
chriseth
64f9dc351e
Merge pull request #8337 from mijovic/assembly-multifile
...
Assembly: Added missing source field to legacy assembly json output
2020-02-18 12:47:19 +01:00
Djordje Mijovic
18dea6b69c
Assembly: Added missing source field to legacy assembly json output to complete the source reference
2020-02-18 10:22:34 +01:00
Jason Cobb
6db0d50094
Don't use identifiers starting with an underscore followed by an uppercase letter
2020-02-17 12:44:39 -05:00
chriseth
2d1c4b770f
Merge pull request #8321 from ethereum/removeStackFromAsmAnalysis
...
Remove stack counting from Asm Analysis.
2020-02-17 14:32:17 +01:00
chriseth
c50631d4e2
Update tests.
2020-02-17 12:58:06 +01:00
chriseth
29e5cd89be
Remove stack counting from Asm Analysis.
2020-02-17 12:58:05 +01:00
Kamil Śliwak
f29d3655f7
[yul-phaser] SimulationRNG: Add bernoulliTrial()
2020-02-16 02:18:21 +01:00
Kamil Śliwak
a8fa332a9c
[yul-phaser] SimulationRNG: Rewrite uniformInt() and binomialInt() tests to rely on variance and expected value
2020-02-16 02:18:21 +01:00
Kamil Śliwak
db140a667a
[yul-phaser] SimulationRNG: Use a single, shared and seedable generator
2020-02-16 02:18:21 +01:00
Kamil Śliwak
342a4e5dee
[yul-phaser] Rename Random to SimulationRNG (fix references)
2020-02-16 02:18:21 +01:00
Kamil Śliwak
0d28d5a287
[yul-phaser] Rename Random to SimulationRNG (file move)
2020-02-16 02:18:21 +01:00
Kamil Śliwak
b01766c4db
[yul-phaser] Gather functions from Random into SimulationRNG class
2020-02-16 02:18:21 +01:00
Kamil Śliwak
4ee9174454
[yul-phaser] Chromosome: Make randomOptimisationStep() public
...
- And add tests now that it's public.
2020-02-16 02:18:21 +01:00
Kamil Śliwak
46d69d0941
[yul-phaser] Common: Add enumerateOptimisationSteps()
2020-02-16 02:18:21 +01:00
Kamil Śliwak
957ca00588
[yul-phaser] Common: Add mean() and meanSquaredError()
2020-02-15 22:21:20 +01:00
Kamil Śliwak
94538efc0e
[yul-phaser] Add a file for small utilities used in yul-phaser's tests
2020-02-15 22:21:20 +01:00
Kamil Śliwak
40b086774a
[yul-phaser] Random: Fix tests allocating more counters than necessary
...
- The tests weren't broken, just less efficient.
2020-02-15 22:21:20 +01:00
Erik Kundt
017d33cfbe
Fix typos in filenames within docstring syntax tests.
2020-02-14 15:53:39 +01:00
Erik Kundt
1d2e1c4f0a
Adds command line test for structured doc errors.
2020-02-14 15:53:39 +01:00
Erik Kundt
85fc0b597b
Adjusts tests to source locations for structured documentation errors.
2020-02-14 15:53:39 +01:00
chriseth
99f88742d6
Merge pull request #8263 from ethereum/functionSelectorPure
...
Mark function selectors accessed via declaration as pure.
2020-02-14 12:34:39 +01:00
Daniel Kirchner
9f094d59b9
Mark function selector accesses as pure for pure expressions and mark function accesses via contract name as pure.
2020-02-14 12:33:33 +01:00
Christian Parpart
c92fe69a60
Finishes external call implementation.
2020-02-14 11:59:04 +01:00
Leonardo Alt
3800391a1a
[Yul] Support conditionals
2020-02-13 17:02:15 -04:00
Mathias L. Baumann
c635377450
Merge pull request #8313 from ethereum/checkFunctionsExistInIsoltest
...
Make type error fatal to prevent assert failure at later point
2020-02-13 16:08:13 +01:00
Mathias Baumann
8911b58a6d
Make type error fatal to prevent assert failure at later point
2020-02-13 15:16:28 +01:00
Daniel Kirchner
7af581df1f
Merge pull request #8309 from ethereum/checkFunctionsExistInIsoltest
...
Check that functions exist in isoltest.
2020-02-13 14:29:58 +01:00
chriseth
9aed40ab19
Check that functions exist in isoltest.
2020-02-13 13:22:53 +01:00
chriseth
1ea66fd1f8
Merge pull request #8301 from ethereum/fixPostTypeChecker
...
PostTypeChecker: ConstStateVarCircularReferenceChecker on function type state variables.
2020-02-12 18:40:19 +01:00
Daniel Kirchner
45f80e9895
Move assertion in PostTypeChecker's ConstStateVarCircularReferenceChecker to account for function type variables
2020-02-12 17:42:27 +01:00
Alexander Arlt
d0eeca8014
Fix CompilerStack::loadMissingSources()
...
- FatalError Exception was not caught
- fixes #8102
2020-02-12 11:22:11 -05:00
Daniel Kirchner
df0873d138
Implement calldata arrays for Yul IR
2020-02-12 14:00:29 +01:00
Daniel Kirchner
3c9f18b749
Use IRVariable's in IR code generation and implement tuples.
2020-02-12 12:36:14 +01:00
Daniel Kirchner
e786650bef
Merge pull request #8274 from ethereum/structRecursionMapping
...
Move mapping key checks to ReferencesResolver and make errors fatal.
2020-02-12 11:19:07 +01:00
chriseth
0e100e7e7e
Merge pull request #8267 from ghallak/prune-unnecessary-funcs
...
[Yul] Prune functions that call each other but are otherwise unreferenced
2020-02-12 11:09:27 +01:00
Gaith Hallak
24d6702986
[Yul] Prune functions that call each other but are otherwise unreferenced
2020-02-11 20:39:32 +03:00
Mathias Baumann
80bd0f47cc
Unify optimize yul code in CompilerContext/ContractCompiler
2020-02-11 13:55:47 +01:00
Mathias Baumann
1a3998648c
Run yul optimizer on user code without refs
2020-02-11 13:55:47 +01:00
Daniel Kirchner
9c3151748e
Move mapping key checks to ReferencesResolver and make them fatal.
2020-02-11 13:35:23 +01:00
Bhargava Shastry
79f1917422
yul proto fuzzer: Refactor dataoffset/size specification
2020-02-11 13:58:36 +05:30
chriseth
d033c2f767
Merge pull request #8178 from ethereum/internal_revert_strings
...
Internal reverts with reason in debug mode
2020-02-10 17:35:41 +01:00
chriseth
db2eece7fc
Merge pull request #8273 from ethereum/fix-8271
...
yul proto fuzzer: Support boolean literal generation
2020-02-10 17:35:09 +01:00
Bhargava Shastry
59e7206c8f
yul proto fuzzer: Support boolean literal generation
2020-02-10 20:48:29 +05:30
Leonardo Alt
36928c7a35
Add reason string for internal reverts
2020-02-10 11:57:20 -03:00
a3d4
e3d6a3e44e
Updated expectations.
2020-02-09 17:29:13 +01:00
chriseth
92c9b078b4
Use correct instance of EVMDialectTyped.
2020-02-06 19:46:37 +01:00
chriseth
4ae97f4563
Make dialect option lowercase.
2020-02-06 19:46:37 +01:00
chriseth
f0ebb26f29
Merge pull request #8223 from imapp-pl/yul-phaser-program-reuse
...
[yul-phaser] Program reuse
2020-02-06 13:29:44 +01:00
Daniel Kirchner
e07274a96f
Disallow libraries as mapping keys.
2020-02-06 09:09:43 +01:00
cameel
e4c7b73897
[yul-phaser] Store already loaded program in Population and make copies when computing fitness
...
- Until now the source code was being parsed during every fitness computation. Now the parsed program is reused and only the optimisation steps are applied each time.
2020-02-06 09:01:10 +01:00
cameel
57fb64d467
[yul-phaser] Make Program copyable by doing a deep copy of the AST in the copy constructor
2020-02-06 09:01:10 +01:00
cameel
33cf4e4769
[yul-phaser] Tests for Population class
2020-02-05 18:13:30 +01:00
cameel
ccaff1b08e
[yul-phaser] Tests for random number generators
2020-02-05 18:13:30 +01:00
cameel
24d63a93cf
[yul-phaser] Tests for Program class
2020-02-05 18:13:30 +01:00
cameel
bee62cdd9e
[yul-phaser] Tests for Chromosome class
2020-02-05 18:13:30 +01:00
cameel
f8e397b487
[yul-phaser] Create test suite for Chromosome
2020-02-05 18:13:30 +01:00
chriseth
5de3379d82
Merge pull request #8238 from ethereum/yul-syntax-tests
...
Implement yul syntax tests
2020-02-05 15:15:41 +01:00
Mathias Baumann
fc10e701fc
Implement yul syntax tests
2020-02-05 14:58:34 +01:00
Mathias Baumann
ef07fc3066
Fix formatting
2020-02-05 13:22:15 +01:00
chriseth
0b9c842656
Fix abstract without contract.
2020-02-05 12:14:14 +01:00
chriseth
527c011c2e
Update tests.
2020-02-04 22:51:33 +01:00
chriseth
48933df18d
Add some missing wasm functions.
2020-02-04 22:44:08 +01:00
chriseth
a7624ffc45
Implement i32 builtins for the interpreter.
2020-02-04 22:44:08 +01:00
chriseth
7cca036f4c
Merge pull request #8224 from a3d4/refactor-sourcelocation
...
Replaced SourceLocation::isEmpty() with isValid() and hasText().
2020-02-04 22:23:51 +01:00
alex
3416c029cf
Relaxed assert in AsmJsonImporter::createAsmNode.
2020-02-04 20:37:51 +01:00
chriseth
cafad3770d
Update tests.
2020-02-04 18:27:01 +01:00
chriseth
9f0cef97c2
Specify default type for word size transform externally.
2020-02-04 18:13:37 +01:00
Daniel Kirchner
d882b6fa83
Allow tests to be marked ABIEncoderV1Only.
2020-02-04 17:22:03 +01:00
Daniel Kirchner
af9fc8b634
Mapping getters for Yul IR.
2020-02-04 17:22:03 +01:00
Daniel Kirchner
d3cbfb0c5c
Allow user-defined types as mapping keys in parser and restrict to contracts during type checking.
2020-02-04 17:22:03 +01:00
alex
211227f50b
Modified SourceLocation::hasText() to allow empty source.
2020-02-04 04:19:28 +01:00
cameel
5fbc4d4afa
[yulopti] Automate printing of the usage banner
...
- This now displays internal step names rather than human-readable ones but the internal ones are readable enough and it's not something worth creating another map.
- Options in the banner are now aligned in columns and thus easier to read.
2020-02-03 12:22:47 +01:00
cameel
4129c27495
[yulopti] Replace hard-coded step list with OptimiserSuite's maps
2020-02-03 12:22:47 +01:00
alex
e4b18e85e6
Replaced SourceLocation::isEmpty() with isValid() and hasText().
...
The function SourceLocation::isEmpty() had somewhat dual role.
Sometimes it indicates that the SourceLocation is invalid.
Sometimes it means that there is no corresponding source text.
Hence the proposal is to replace it with two functions, isValid() and hasText().
I also removed Scanner::sourceAt(). (Do we have a rule of thumb to remove unused code?)
Since hasText() checks that start and end are valid indices for source, I adjusted a couple of tests to avoid empty source strings.
2020-02-03 08:04:21 +01:00
chriseth
2098dbade9
Merge pull request #7834 from ethereum/docstring-ast-node
...
[natspec] Introduce AST node for structured documentation
2020-01-30 19:04:52 +01:00
Erik Kundt
4a179056ed
Adds JSON import / export for structured documentation.
2020-01-30 18:26:01 +01:00
Erik Kundt
ec27c2e507
Introduce AST node for structured documentation.
2020-01-30 18:25:56 +01:00
chriseth
2afcfec77b
Merge pull request #8220 from ethereum/remove-var-name-cleaner-from-optimiser-suite-step-list
...
Remove var name cleaner from optimiser suite step list
2020-01-30 17:58:43 +01:00
cameel
ed5210490d
[yulopti] Run disambiguator after VarNameCleaner
...
- This is a trivial change and it makes it safe to use in combination with other step.
2020-01-30 17:35:27 +01:00
chriseth
d41e1db74a
Adjust and add commandline tests for yul.
2020-01-29 19:10:53 +01:00
chriseth
d3b53ee394
Make bool type optional for bool literals.
2020-01-29 19:01:28 +01:00
chriseth
a66782537a
Use old yul dialect only in tests.
2020-01-29 19:01:28 +01:00
chriseth
d07dd55096
Update wasm tests.
2020-01-29 17:25:25 +01:00
chriseth
23667ce12d
Update Yul optimizer tests.
2020-01-29 17:25:25 +01:00
chriseth
e7b95de315
Tests for default type parsing.
2020-01-29 17:25:25 +01:00
chriseth
fbe5bb0cce
Parse default dialect and omit when printing.
2020-01-29 17:25:25 +01:00
chriseth
e41155cf48
Merge pull request #8062 from imapp-pl/polyfill-part-2
...
Arithmetic functions implementation for EVM->EWasm translator.
2020-01-29 17:22:27 +01:00
chriseth
457cdecf6f
Merge pull request #8135 from ethereum/fix-get-options-7112
...
TestFramework: Merge Options.h into Common.h
2020-01-29 16:05:55 +01:00
Mathias L. Baumann
5130a2b0ae
Merge pull request #8063 from ethereum/yulvisit-7656
...
Use yul::AstWalker for assembly reference resolving
2020-01-29 14:56:19 +01:00
Mathias Baumann
00e4d13975
TestFramework: Merge Options.h into Common.h
2020-01-29 12:27:05 +01:00
chriseth
a788ba14f3
Merge pull request #8173 from ethereum/fix-7859
...
yul proto fuzzer: Add EVM version field
2020-01-28 22:14:25 +01:00
chriseth
35820398c2
Merge pull request #8179 from pinkiebell/codegen
...
libsolidity/codegen: Use calldatacopy to cheaply zero memory..
2020-01-28 18:07:30 +01:00
Mathias Baumann
b8e2baf5f4
Use yul::AstWalker to resolve assembly symbols
2020-01-28 17:57:48 +01:00
Mathias Baumann
2f1f8e25c1
TestFramework: Remove headers from Options.h
2020-01-28 17:29:22 +01:00
rodiazet
f1004e712c
[WASM] Add div, sdiv, mod, smod, exp, lt, sar, addmod, mulmod, signextend
2020-01-28 13:32:43 +01:00
Mathias Baumann
1027f6f78f
Extract some semantic tests
2020-01-28 11:59:44 +01:00
Bhargava Shastry
8cbe1d4b1d
yul proto fuzzer: Make function call generation optional
2020-01-24 12:31:43 +05:30
Bhargava Shastry
a335fed189
yul proto fuzzer: Add EVM version field
2020-01-24 12:31:20 +05:30
chriseth
790c6d2cae
Tests for salted create.
2020-01-23 21:20:01 +01:00
chriseth
2fa586beac
Test that uses function call options on overloaded function.
2020-01-23 21:20:01 +01:00
Mathias Baumann
a3f23d3158
Implement new with CREATE2 and function call options.
2020-01-23 21:20:01 +01:00
chriseth
679f729f2f
Implement create2 for evmhost.
2020-01-23 21:20:01 +01:00
pinkiebell
bb6fb675e0
libsolidity/codegen: Use calldatacopy to cheaply zero memory instead of
...
codecopy.
Motiviation:
Zero'ing memory is commonplace in contracts, but with the upcoming
Layer-2 EVM translation layers and other on-chain verification
mechanisms, using `codecopy` becomes a `costly` operation in those
sandboxes. Using `calldatacopy` achieves the same thing, gas costs
are also the same as codecopy, and is significantly cheaper in the `sandbox` situation.
2020-01-22 17:56:56 +01:00
Jason Cobb
595f569e97
Update tests for interface inheritance
2020-01-22 09:40:40 -05:00
Jason Cobb
573a054d5d
Prohibit interfaces inheriting from non-interfaces
2020-01-22 09:40:40 -05:00
chriseth
1b19524036
Merge pull request #8150 from ethereum/isoltest-alignment-output
...
[isoltest] Proper output of alignment in obtained test results
2020-01-20 12:38:12 +01:00
Bhargava Shastry
9befb4bdf0
yul proto fuzzer: Do not generate infinite for loops and limit total
...
number of for loops per test program to two
2020-01-20 16:27:01 +05:30
chriseth
470c19eb8c
Merge pull request #8165 from imapp-pl/yulopti-missing-step
...
yulopti: Add missing ConditionalUnsimplifier step
2020-01-20 11:45:29 +01:00
Alex Beregszaszi
004f01a388
Add test case for gas metering of exp(n, 0)
2020-01-17 14:24:55 +01:00
cameel
bf5e62931d
fixup! [yulopti] Fix typo: (f)flatten -> (f)latten
2020-01-17 12:38:45 +01:00
cameel
49ca1f8534
[yulopti] Add missing ConditionalUnsimplifier to the list of available optimizations
2020-01-17 08:01:39 +01:00
cameel
4262eebdc4
[yulopti] Fix typo: (f)flatten -> (f)latten
2020-01-17 08:01:31 +01:00
Daniel Kirchner
ee5ff4df4e
Clean up visibility via contract name and fix ICE on calling unimplemented base function.
2020-01-16 19:13:04 +01:00
Alex Beregszaszi
4d8758fcc3
Remove operator~ from FixedHash
2020-01-16 17:18:03 +00:00
Alex Beregszaszi
3c88d295b3
Remove FixedHash(unsigned) constructor
2020-01-16 16:18:08 +00:00
Erik Kundt
ae67cbde7d
Fixes missing alignment output in isoltest.
2020-01-15 18:18:16 +01:00
chriseth
c017072bac
Merge pull request #8013 from ethereum/warnings
...
Enable more warnings in the build system
2020-01-15 18:00:14 +01:00
chriseth
5fb8e76931
Merge pull request #8136 from imapp-pl/polyfill-mstore8
...
mstore8 polyfill
2020-01-15 17:02:40 +01:00
Alex Beregszaszi
eafcb42be7
Enable more compiler warnings in the build system
...
"-pedantic -Wno-unknown-pragmas -Wimplicit-fallthrough"
2020-01-15 14:33:27 +00:00
chriseth
6ab8802601
Merge pull request #8132 from ethereum/drop-lll
...
Remove the LLL compiler
2020-01-15 15:15:22 +01:00
Alex Beregszaszi
9c19b93c37
Remove LLL specific features from libevmasm
2020-01-15 13:27:51 +00:00
chriseth
ed87b08911
Merge pull request #8066 from ethereum/removeAsmFlavour
...
Remove asm flavour
2020-01-15 14:21:54 +01:00
Alex Beregszaszi
1ee4b9dc3b
Remove the LLL compiler
2020-01-15 13:18:18 +00:00
rodiazet
3760e90582
[WASM] mstore8 function implementation added.
2020-01-15 14:06:43 +01:00
chriseth
9d9a7ebe25
Merge pull request #7765 from ethereum/fix-7626
...
yul proto fuzzer: permit variable declarations inside for-init block
2020-01-15 11:21:23 +01:00
chriseth
0149220e0d
Merge pull request #8140 from nventuro/patch-1
...
Fix error message suggestion for receive
2020-01-14 23:36:09 +01:00
Nicolás Venturo
9649c92e12
Fix error message suggestion for receive
2020-01-14 23:24:27 +01:00
Mathias Baumann
21611f6b6f
Add test for incorrect evm version when importing an ast tree
2020-01-14 18:42:43 +01:00
chriseth
b3fe84a6ea
Merge pull request #7153 from djudjuu/newImportAST
...
import ast from JSON
2020-01-14 17:56:53 +01:00
chriseth
0f014144c8
Test for true/false in inline assembly.
2020-01-14 17:16:09 +01:00
chriseth
123ea0a250
Remove asm flavour.
2020-01-14 17:16:09 +01:00
djudjuu
e8556fa1b2
Ast-Import from standard-json
2020-01-14 17:15:53 +01:00
chriseth
4d681fb16d
Merge remote-tracking branch 'origin/develop' into HEAD
2020-01-14 16:43:48 +01:00
Mathias Baumann
adc4774d4a
ASTJSON: Export evm version
2020-01-14 12:51:21 +01:00
Christian Parpart
abb9f1eed7
CMake: Renaming devcore static library to solutil (to match source code paths)
2020-01-13 15:52:46 +01:00
Bhargava Shastry
49a05b5935
Permit variable declarations inside for init block
2020-01-13 16:17:33 +05:30
Erik Kundt
7fec5f9548
Fixes unused variables that break osx build.
2020-01-11 23:11:04 +01:00
Erik Kundt
729b47e641
Updates semantic tests to 0.7.0.
2020-01-11 23:11:00 +01:00
chriseth
a4e34b378a
Merge pull request #8105 from ethereum/functionTypeRefactor
...
Add a new Function Type referring to FunctionDefinition's without calling context and use it to allow selector lookup.
2020-01-09 17:15:46 +01:00
Daniel Kirchner
9535c0f520
Introduce FunctionKind::Declaration and allow accessing function signatures via contract name.
2020-01-09 15:40:41 +01:00
Daniel Kirchner
b845595cbd
Ignore empty options to (i)soltest
2020-01-09 14:49:11 +01:00
chriseth
5ca3abd7cb
Merge pull request #8106 from random-internet-cat/move-contract-kind
...
Move ContractKind from ContractDefinition to file-scope
2020-01-08 13:06:26 +01:00
chriseth
e81e73345e
Merge pull request #8112 from ethereum/fixIndent
...
[tiny PR] Fix indentation in test/tools/CMakeLists.txt
2020-01-08 11:44:06 +01:00
Daniel Kirchner
61652366ab
Fix indentation
2020-01-08 10:42:19 +01:00
chriseth
b5bd4787af
Merge pull request #7801 from ethereum/tuneRemat
...
Tune rematerializer
2020-01-08 10:41:32 +01:00
rodiazet
b8c59c56e0
[WASM] Add keccak256, balance, extcodecopy, blockhash, coinbase, log's, call, callcode, delegatecall, staticcall
2020-01-08 10:08:36 +01:00
chriseth
40c0602b5c
Do not rematerialize in loops.
2020-01-08 09:56:08 +01:00
chriseth
25d3f27c11
Tune Rematerializer
2020-01-08 09:56:08 +01:00
chriseth
d1a7ff0fbc
Merge pull request #8008 from ethereum/large-code
...
Issue warning if codesize exceeds EIP-170 limits
2020-01-08 09:48:59 +01:00
Daniel Kirchner
70a2902714
Merge pull request #8100 from ethereum/deadTestArguments
...
Disallow dead positional arguments for (i)soltest
2020-01-07 16:56:10 +01:00
Daniel Kirchner
be0775da49
Merge pull request #8075 from ethereum/refactor-namespaces
...
Refactor namespaces
2020-01-07 16:52:20 +01:00
Mathias L. Baumann
a2141d3be2
Merge pull request #7869 from fulldecent/fix-kill
...
Reduce usage of word kill
2020-01-07 16:01:04 +01:00
Christian Parpart
345f9928ab
Library libdevcore renamed to libsolutil.
2020-01-07 15:51:50 +01:00
Christian Parpart
8ac6258d31
lll: Adapted to namespace changes.
2020-01-07 15:51:50 +01:00
Christian Parpart
ed45b000d1
Adapt tests directory to C++ namespace changes.
2020-01-07 15:51:50 +01:00
Christian Parpart
6b23412fae
C++ namespace cleanup (except tests).
2020-01-07 15:51:50 +01:00
Jason Cobb
529405deb6
Move ContractKind from ContractDefinition to file-scope
2020-01-07 09:11:29 -05:00
William Entriken
6d068b6331
Reduce usage of the word "kill"
2020-01-07 11:18:10 +01:00
Bhargava Shastry
49aec64caf
abiv2 proto converter: Do not resize dynamic storage arrays by writing to the length field as it is now read only
2020-01-06 17:44:42 +01:00
Daniel Kirchner
3e714913a0
Disallow positional arguments for (i)soltest instead of ignoring
2020-01-06 15:28:20 +01:00
Leonardo Alt
d972a10b4f
Review 1
2020-01-02 12:43:56 +01:00
chriseth
3994c9135f
Tests.
2019-12-29 15:53:47 +01:00
Alex Beregszaszi
4d791b2679
Issue warning if codesize exceeds EIP-170 limits
2019-12-25 19:51:35 +01:00
Alex Beregszaszi
9c27e98b83
Rename EWasmBuiltinInterpreter to EwasmBuiltinInterpreter
2019-12-19 11:36:08 +00:00
Alex Beregszaszi
65e59ecd06
Rename EWasm/ewasm/eWasm to Ewasm
2019-12-19 11:36:08 +00:00
Alex Beregszaszi
8511012e95
Merge pull request #8060 from ethereum/yul-interp-fix
...
Fix getExternalCodeSize in the Yul Ewasm interpreter
2019-12-18 23:14:48 +00:00
Alex Beregszaszi
4cebe66f8c
Merge pull request #8059 from ethereum/dialectForOpt
...
Dialect setting for yul optimizer tests.
2019-12-18 22:56:35 +00:00
Alex Beregszaszi
47a8e5fbd1
Fix getExternalCodeSize in the Yul Ewasm interpreter
2019-12-18 22:54:34 +00:00
chriseth
1e59c19166
Dialect setting for yul optimizer tests.
2019-12-18 21:54:30 +01:00
rodiazet
d867f5339b
[WASM] add i64.clz and i64.store8 to Wasm dialect and EWasm interpreter.
...
dsads
2019-12-18 19:51:27 +01:00
Alex Beregszaszi
7effc94f24
Rename EVMToEWasmTranslator to EVMToEwasmTranslator
2019-12-18 16:57:45 +00:00
Alex Beregszaszi
7d3ccee921
Fix implementation of getCodeSize in Ewasm
2019-12-18 14:58:28 +00:00
Alex Beregszaszi
b3caf35e88
Change writeU256/writeU128/writeAddress not to return anything in Yul Ewasm interpreter
2019-12-18 14:58:28 +00:00
Alex Beregszaszi
9f1e8086bb
Fix returning code size in Yul Ewasm interpreter
2019-12-18 14:58:28 +00:00
chriseth
b74f357c5e
Merge pull request #8051 from ethereum/yul-interp-log
...
Fix tracing LOG instruction in the Yul Ewasm interpreter
2019-12-18 15:08:06 +01:00
Alex Beregszaszi
7d60cc1729
Fix tracing LOG instruction in the Yul Ewasm interpreter
2019-12-18 13:35:05 +00:00
rodiazet
7d8c4c24ee
Add arithmetic test cases for most of EVM->Ewasm translator
2019-12-18 13:58:03 +01:00
chriseth
4b026fa633
Update gas costs.
2019-12-18 01:41:32 +01:00
chriseth
b6fc703a27
Merge remote-tracking branch 'origin/release' into HEAD
2019-12-17 19:47:59 +01:00
chriseth
85a503725c
Merge pull request #8015 from ethereum/yul-trace-unreachable
...
Add trace for unreachable in Yul Ewasm translation tests
2019-12-17 17:42:44 +01:00
chriseth
244b011a30
More test cases.
2019-12-17 17:08:27 +01:00
chriseth
143471fe87
Tests.
2019-12-17 15:47:32 +01:00
chriseth
bdd338a8de
Merge pull request #7921 from ghallak/func-selector-ast-json
...
Add function selector to FunctionDefinition AST JSON
2019-12-16 14:07:35 +01:00
Gaith Hallak
0396bc7beb
Modify the tests to include the function selector
2019-12-16 15:16:54 +03:00
Alex Beregszaszi
2a808e4f32
Add trace for unreachable in Yul Ewasm translation tests
2019-12-15 13:28:38 +00:00
Erik Kundt
0620936506
Adds test for empty contract w/ error recovery.
2019-12-13 15:39:10 +01:00
Alex Beregszaszi
5db5382fac
Remove boost <1.59 workaround from tests
2019-12-13 00:36:34 +00:00
chriseth
670b719773
Updates to control structures (2).
...
Co-Authored-By: Bhargava Shastry <bhargava.shastry@ethereum.org>
2019-12-12 17:01:57 +01:00
chriseth
b53629d3d0
Merge pull request #7977 from imapp-pl/yul-ewasm-tests-imapp
...
Add comparison test cases for most of EVM->Ewasm translator
2019-12-12 14:07:13 +01:00
chriseth
255f63e352
Merge pull request #7963 from ethereum/yul-ewasm-tests
...
Add bitwise test cases for most of EVM->Ewasm translator
2019-12-12 14:03:17 +01:00
chriseth
276c777af3
Merge pull request #7976 from ethereum/solc-api
...
Test solidity_free in tests too
2019-12-12 12:48:28 +01:00
Alex Beregszaszi
6e6bc9904f
libsolc: change return type of compile to non-const
2019-12-12 11:26:16 +00:00
chriseth
c175a468ab
Do not call ABIEncoderV2 experimental.
2019-12-12 10:59:07 +01:00
rodiazet
336b436d3e
Add comparison test cases for most of EVM->Ewasm translator
...
Add comparison test cases for most of EVM->Ewasm translator
2019-12-11 23:23:35 +01:00
Alex Beregszaszi
2ccf3ea4ab
Test solidity_free in tests too
2019-12-11 18:43:13 +00:00
Leonardo
b9c35916e5
Merge pull request #7975 from ethereum/solcjs-tests
...
Use master branch of solc-js
2019-12-11 19:02:00 +01:00
Alex Beregszaszi
9ce01b19b2
Use master branch of solc-js
2019-12-11 16:48:11 +00:00
chriseth
f22bd769ff
Merge pull request #7939 from ethereum/more_tests_override_stuff
...
Ambiguous override for public state variables
2019-12-11 17:16:59 +01:00
Bhargava Shastry
f5bd483dfa
yul proto fuzzer: Target default evm version
2019-12-11 16:52:00 +01:00
Alex Beregszaszi
5998f31543
Use BOOST_REQUIRE instead of BOOST_CHECK in LibSolc tests where appropriate
2019-12-11 15:17:50 +00:00
Alex Beregszaszi
b7d6e44af7
Fix callback memory allocation in tests
2019-12-11 15:17:39 +00:00
Christian Parpart
8682af2216
libsolc: Overhauls memory management.
2019-12-11 15:17:39 +00:00
Leonardo Alt
1fb62b91d2
Add more override tests with public state variables
2019-12-11 15:15:51 +01:00
Alex Beregszaszi
8cb085ca0d
Add bitwise test cases for most of EVM->Ewasm translator
2019-12-11 12:44:05 +00:00
Alex Beregszaszi
fbf946e493
Add also smoke tests for opcodes not part of Ewasm
2019-12-10 17:00:45 +00:00
Alex Beregszaszi
d8cf8e98bd
Add basic test cases for most of EVM->Ewasm translator
2019-12-10 17:00:45 +00:00
chriseth
07d271e770
Merge remote-tracking branch 'origin/develop' into develop_060
2019-12-10 10:07:30 +01:00
Alex Beregszaszi
c9360421fc
Move snark test from SolidityEndToEnd
2019-12-09 18:33:07 +00:00
chriseth
a5f7661075
Ambigous overrides for modifiers.
2019-12-09 18:43:59 +01:00
chriseth
152f42c6b2
Make ambigous override checker generic.
2019-12-09 18:41:39 +01:00
chriseth
6d2e59cc80
More tests.
2019-12-09 18:41:39 +01:00
chriseth
e1d6ce2b66
Override checks for modifiers.
2019-12-09 18:41:39 +01:00
Erik Kundt
1de27e0830
Adjusts solc-js DAO contracts to breaking natspec change.
2019-12-09 17:28:57 +01:00
chriseth
f6916a637e
Merge remote-tracking branch 'origin/develop' into develop_060
2019-12-09 17:16:58 +01:00
Leonardo
2579a12bb8
Merge pull request #7894 from ethereum/smt_isoltest_choice
...
[SMTChecker] Create SMTSolver option in isoltest
2019-12-09 16:41:20 +01:00
chriseth
06e8e216b3
Some more tests.
2019-12-09 16:04:45 +01:00
Daniel Kirchner
4c7f9f9751
Do not require overriding for functions in common base with unique implementation.
2019-12-09 16:04:45 +01:00
chriseth
9c3503834d
Fix semver matcher differently.
2019-12-09 15:45:01 +01:00
Leonardo Alt
beed0f6a27
Set tests that CVC4 can't handle to Z3 only
2019-12-09 15:32:08 +01:00
Leonardo Alt
8d5f5a5cbe
Remove deprecated code
2019-12-09 15:32:08 +01:00
Leonardo Alt
77b9416d3e
Extract SMTChecker mod test
2019-12-09 15:32:08 +01:00
Leonardo Alt
02343208ad
Extract SMTChecker compound assignment division tests
2019-12-09 15:32:08 +01:00
Leonardo Alt
ae6cdc3442
Extract more SMTChecker division tests
2019-12-09 15:32:08 +01:00
Leonardo Alt
b870e4ea31
Extract SMTChecker division tests
2019-12-09 15:32:08 +01:00
Leonardo Alt
225041738e
Add SMTCheckerTest for isoltest
2019-12-09 15:32:08 +01:00
Leonardo Alt
3e8584bd21
Pull SyntaxTest::run content into separate functions
2019-12-09 15:32:08 +01:00
chriseth
071a52f0ff
Merge remote-tracking branch 'origin/develop' into develop_060
2019-12-09 14:43:53 +01:00
Alex Beregszaszi
b4a260d6e3
Test solc-js with v0.5.0
...
Reverts part of edd80a98
2019-12-09 13:17:38 +00:00
Mathias Baumann
e999409c89
Sync & update AST exporting according to AST changes
2019-12-09 10:42:24 +00:00
Christian Parpart
48dd1e398d
test: Improve handling invalid EVMVersion syntax in test cases.
2019-12-09 10:14:27 +01:00
chriseth
e061f1e743
Merge remote-tracking branch 'origin/develop' into HEAD
2019-12-05 16:44:26 +01:00
chriseth
1fe1459b7d
Merge pull request #7583 from HenryRLee/issue5081
...
Version Checker: 0.5.x-prerelease will match `pragma solidity ^0.5` #5081
2019-12-05 14:59:58 +01:00
Mathias Baumann
b7d5de59c5
Implement overridding of functions by public variables
2019-12-05 12:48:52 +00:00
Gaith Hallak
4d90180e24
Support referencing other constants in inline assembly
2019-12-05 13:27:17 +03:00
chriseth
52467108ac
Merge pull request #7903 from ethereum/fixSuperFunction
...
Update missed tests for removal of superFunction.
2019-12-05 10:45:35 +01:00
chriseth
ac996d209f
Fix gas cost test.
2019-12-05 10:17:09 +01:00
chriseth
c326641341
Update missed tests for removal of superFunction.
2019-12-05 09:37:52 +01:00
Daniel Kirchner
426f04b389
Implement and fix overriding unimplemented and implemented functions with unimplemented functions.
2019-12-05 09:26:43 +01:00
chriseth
2c72ee7017
Merge pull request #7902 from ethereum/fixTest
...
Fix test
2019-12-05 09:22:50 +01:00
chriseth
cf12e20e43
Fix test.
2019-12-05 09:12:05 +01:00
Daniel Kirchner
d3ba65968c
Add new test.
2019-12-05 03:33:32 +01:00
Daniel Kirchner
7fab1c5e4a
Update tests.
2019-12-05 03:33:32 +01:00
Henry Lee
628d219c94
Version Checker: 0.5.x-prerelease will match pragma solidity ^0.5
...
Basically, the pre-release rule is only applied when all remaining
version numbers equal to 0.
2019-12-05 09:07:20 +11:00
chriseth
d34b0b76b1
Merge pull request #7837 from ethereum/docstring-named-return
...
Report DocString error on named return paramater mismatch
2019-12-04 17:57:52 +01:00
chriseth
42d9a8e962
Merge remote-tracking branch 'origin/develop' into develop_060
2019-12-04 17:01:44 +01:00
Erik Kundt
19d466d6fb
Fixes named return natspec errors in compilation tests.
2019-12-04 15:38:12 +01:00
Erik Kundt
e5cb0fe839
Reports doctring error on named return mismatch.
2019-12-04 15:38:11 +01:00
chriseth
bd26da8d37
Merge pull request #7892 from ethereum/fixArrayLoopBug
...
Increase loop size to account for net storage gas metering.
2019-12-04 15:31:17 +01:00
Mathias Baumann
12f18b0220
Fix commandline tests after "develop" -> "develop_060" merge
2019-12-04 13:54:06 +01:00
chriseth
4365b665f4
Increase loop size to account for net storage gas metering.
2019-12-04 13:13:05 +01:00
chriseth
af482470f9
Update gas costs.
2019-12-04 11:41:42 +01:00
chriseth
dc79274871
Set default EVM version to Istanbul.
2019-12-04 10:42:14 +01:00
chriseth
d0f9201ed4
Merge pull request #7866 from ethereum/considerInfiniteLoopsNonMovable
...
[Yul] Mark recursive functions and functions containing loops to be non-movable.
2019-12-03 22:02:20 +01:00
Leonardo Alt
d6e8ca4c54
Fix SMTChecker tests in 060
2019-12-03 21:44:10 +01:00
chriseth
f2790cc5e0
Merge pull request #7886 from ethereum/develop
...
Merge develop into develop_060
2019-12-03 21:41:49 +01:00
chriseth
f713b7e158
Remove trailing whitespace in test.
2019-12-03 21:38:20 +01:00
chriseth
bbeb093abf
Detect loops in call graph generator.
2019-12-03 21:38:20 +01:00
chriseth
37d776a1a6
Merge pull request #7831 from ethereum/mocked-host
...
Use evmc::MockedHost moar
2019-12-03 21:27:50 +01:00
chriseth
e3ee67da6c
Merge pull request #7792 from ethereum/enableYulOptimizer
...
Enable yul optimizer by default.
2019-12-03 21:24:22 +01:00
chriseth
287b9be7af
Merge pull request #7872 from ethereum/smt_z3_4_8_7
...
Update to Z3 4.8.7
2019-12-03 21:23:40 +01:00
chriseth
2d42da3b7d
Merge pull request #7817 from ethereum/bail-on-shadowing-state-vars
...
Report error on shadowing state variables
2019-12-03 21:22:39 +01:00
Christian Parpart
7bbdfe070f
Make shadowing of inherited state variables an error.
2019-12-03 21:20:03 +01:00
chriseth
2f11ac3590
Merge remote-tracking branch 'origin/develop' into develop_060
2019-12-03 21:17:15 +01:00
chriseth
19a6f09cc8
Merge commit '4d2f20570' into develop_060
2019-12-03 21:01:31 +01:00
chriseth
96d777d7f1
Merge commit 'a7d481fb9' into develop_060
2019-12-03 20:47:30 +01:00
Leonardo Alt
5337f58767
Update to Z3 4.8.7
2019-12-03 20:19:20 +01:00
Alex Beregszaszi
c644f43cde
Update test expection in use_stack_optimization with YulException
2019-12-03 19:06:48 +01:00
Alex Beregszaszi
7156c908be
Drop non-strict version of jsonParse* and always use jsonParseStrict
2019-12-03 16:20:23 +01:00
Daniel Kirchner
c1505d3f44
Fix solc-js tests.
2019-12-03 10:53:11 +01:00
Leonardo Alt
b1577f5e46
[SMTChecker] Fix ICE in array of structs type
2019-12-03 01:12:30 +01:00
Paweł Bylica
cdcfea73ab
EVMHost: Remove unneeded methods
2019-12-02 23:22:27 +01:00
Paweł Bylica
0bd80ed958
EVMHost: Mark methods as final
2019-12-02 23:22:27 +01:00
Paweł Bylica
19f54857a6
EVMHost: Make m_currentAddress private
2019-12-02 23:22:27 +01:00
Paweł Bylica
eacc1753fd
EVMHost: Remove unnecessary State struct
2019-12-02 23:22:27 +01:00
Paweł Bylica
7a0f311032
EVMHost: Use evmc::MockedAccount
2019-12-02 23:22:10 +01:00
Paweł Bylica
635e2fc9d3
EVMHost: Reuse tx_context from MockedHost
2019-12-02 23:04:02 +01:00
Paweł Bylica
2683c83ad2
EVMHost: Use recorded_logs from MockedHost
2019-12-02 23:04:02 +01:00
Alex Beregszaszi
1718250248
EVMHost: use evmc::MockedHost
2019-12-02 23:04:02 +01:00
Daniel Kirchner
05baa23e8a
Require unimplemented functions to be virtual.
2019-12-02 21:59:00 +01:00
Alex Beregszaszi
c4012eee33
Update EVMHost to EVMC 7.1.0
...
Co-authored-by: Paweł Bylica <chfast@gmail.com>
2019-12-02 21:26:42 +01:00
Alex Beregszaszi
aba2ee0f68
Update EVMC to 7.1.0
2019-12-02 21:26:42 +01:00
Alex Beregszaszi
2a62425f0a
EVMHost: mark precompiles as existing accounts in the constructor
2019-12-02 20:49:33 +01:00
Paweł Bylica
578d69983d
EVMHost: Mark precompiles implementation as static methods
2019-12-02 20:41:50 +01:00
Alex Beregszaszi
fca0f6e2c1
Disable EndToEnd/snark test on <Byzantium (given the precompiles were introduced after)
2019-12-02 19:37:09 +01:00
Daniel Kirchner
77a9e91443
Enable yul optimizer by default.
2019-12-02 19:30:14 +01:00
Alex Beregszaszi
ddf6e067ed
EVMHost: disallow Byzantium precompiles on earlier EVM versions
2019-12-02 19:11:18 +01:00
Erik Kundt
28ebe967a2
Force Gnosis PM fork of 0.6.0
2019-12-02 18:10:39 +01:00
Erik Kundt
1fbcf7bd8b
Override Truffle version in Gnosis safe-contracts.
2019-12-02 18:10:39 +01:00
Erik Kundt
f13fa7ed82
Adjusts solc-js test to earlier override of soljson.
2019-12-02 18:10:39 +01:00
Erik Kundt
40b58adcdb
Fixes solc path override in Truffle config.
2019-12-02 18:10:39 +01:00
Erik Kundt
3f00a0fc8c
Fixes wrong URL of Zeppelin fork.
2019-12-02 18:10:39 +01:00
Erik Kundt
9f1348d7c7
Switches to Colony dappsys fork.
2019-12-02 18:10:39 +01:00
chriseth
c61ed0b22d
Merge pull request #7797 from ethereum/allowTranslationInAssemblyMode
...
Allow EVM to EWasm translation in assembly mode.
2019-12-02 13:15:06 +01:00
Leonardo
a7d481fb94
Merge pull request #7851 from ethereum/smt_fix_function_type
...
[SMTChecker] Fix ICE for arrays and mappings of functions.
2019-11-30 13:15:08 +01:00
Alex Beregszaszi
805d4d5a57
LLL: fix test cases after chaind/selfbalance was added
2019-11-30 11:56:22 +01:00
Leonardo
767ce4417f
Merge pull request #7850 from ethereum/smt_fix_typetype
...
[SMTChecker] Fix visit to IndexAccess that has type Type
2019-11-29 18:18:26 +01:00
Leonardo Alt
5adc2a40b9
[SMTChecker] Fix ICE for arrays and mappings of functions.
2019-11-29 18:06:44 +01:00
Leonardo Alt
9eda95caf9
[SMTChecker] Fix visit to IndexAccess that has type Type
2019-11-29 17:20:50 +01:00
Leonardo Alt
c09da092d2
[SMTChecker] Fix constructors with local vars
2019-11-29 16:59:15 +01:00
Leonardo Alt
84f806e75d
Reenable push tests via Yul
2019-11-29 16:52:13 +01:00
Daniel Kirchner
edd80a986d
Update emscripten to 1.39.3
2019-11-29 12:55:02 +01:00
Daniel Kirchner
909296582f
Remove zeppelin truffle workaround
2019-11-28 21:31:12 +01:00
Daniel Kirchner
025a696bb0
Fix unrelated test failure.
2019-11-28 20:01:36 +01:00
Daniel Kirchner
7d1b0c6023
Fix Yul IR push
2019-11-28 18:11:38 +01:00
chriseth
bee2b9e120
Commandline test.
2019-11-28 16:22:24 +01:00
Leonardo Alt
a352abe00d
[SMTChecker] Add support to constructors
2019-11-28 14:43:23 +01:00
chriseth
f7fc42d8c3
Merge pull request #7826 from ethereum/develop
...
Merge develop into develop_060
2019-11-28 13:37:19 +01:00
chriseth
301215f186
Merge pull request #7461 from sifmelcara/licm
...
[YulOpt] Implement loop-invariant code motion
2019-11-28 12:00:19 +01:00
mingchuan
db60d123d0
[YulOpt] Implement loop-invariant code motion
2019-11-28 11:59:29 +01:00
Leonardo Alt
240ff30878
[SMTChecker] Do not visit the name of a modifier invocation
2019-11-27 22:34:33 +01:00
chriseth
1ebcc757e1
Merge remote-tracking branch 'origin/develop' into develop_060
2019-11-27 19:14:08 +01:00
chriseth
d207ae5dc7
Merge pull request #7798 from ethereum/evmc-literals
...
Use EVMC literals in EVMCHost
2019-11-27 19:12:07 +01:00
chriseth
80978293ab
Merge pull request #7818 from ethereum/evmc_vm
...
test: Use evmc::VM directly
2019-11-27 19:11:12 +01:00
Paweł Bylica
38a20190f4
test: Use evmc::VM directly
...
The evmc::VM works as a RAII wrapper similarly to unique_ptr, so there is no point in using additional unique_ptr.
2019-11-27 18:53:02 +01:00
Mathias Baumann
7bc6645218
Disallow use of virtual and private together
2019-11-27 18:52:41 +01:00
chriseth
0bb88dabb7
Restrict usage of plain "new".
2019-11-27 17:55:11 +01:00
chriseth
9e9b643b93
Tune the suite.
2019-11-27 11:56:11 +01:00
Alex Beregszaszi
e8b37c3bb5
Use EVMC literals in EVMCHost
2019-11-26 22:20:45 +01:00
Alex Beregszaszi
f14b7c7051
Update truffle* tests to use solc-js master_060
2019-11-26 19:11:28 +01:00
Alex Beregszaszi
1a4ee4ea34
Revert "Run solc-js tests against callback-context [REMOVE]"
...
This reverts commit 3133544313
.
2019-11-26 19:11:11 +01:00
chriseth
7c063987c2
Merge pull request #7793 from ethereum/hex-tests
...
Add comprehensive tests to fromHex/toHex
2019-11-26 19:10:18 +01:00
Alex Beregszaszi
8fd95484fe
Add comprehensive tests to fromHex/toHex
2019-11-26 17:34:50 +01:00
Bhargava Shastry
ea9e849ee4
Use pointer to string for efficiency
2019-11-26 17:12:56 +01:00
Bhargava Shastry
41bdc9b673
yul proto fuzzer: Generalize variable references
2019-11-26 17:12:56 +01:00
chriseth
400667fddf
Update tests after merge from develop.
2019-11-26 16:27:07 +01:00
chriseth
b0db64ff5b
Merge remote-tracking branch 'origin/develop' into develop_060
2019-11-26 16:19:35 +01:00
chriseth
41177bc75c
Merge pull request #7770 from ethereum/yul_string_format
...
[Yul] Format string literals back to quoted string literals
2019-11-26 15:51:54 +01:00
chriseth
0973ae751a
Do not warn about enabled ABIEncoderV2 anymore.
2019-11-26 15:49:42 +01:00
chriseth
d4d0df021d
EWasm translation tests.
2019-11-26 15:46:33 +01:00
chriseth
6625f634fc
Wasm Interpreter
2019-11-26 15:46:33 +01:00
Mathias L. Baumann
a45eed6dbf
Merge pull request #7584 from ethereum/callback-context
...
Introduce callback context in libsolc
2019-11-26 15:29:03 +01:00
Leonardo Alt
ce83bfb088
[Yul] Format string literals back to quoted string literals
2019-11-26 15:28:39 +01:00
Gaith Hallak
4a1e85436b
Allow splitting string literals into multiple parts
2019-11-26 14:41:30 +03:00
chriseth
b6ad8f06e7
Merge pull request #7782 from ethereum/develop
...
Merge develop into develop_060
2019-11-25 17:58:09 +01:00
chriseth
78e4197cbc
Merge pull request #7764 from ethereum/ext-test-compile-split
...
[circleci] Splits out compilation only job for external tests
2019-11-25 17:30:15 +01:00
Alex Beregszaszi
3133544313
Run solc-js tests against callback-context [REMOVE]
2019-11-22 11:50:13 +00:00
Alex Beregszaszi
eedfafbbc4
Introduce callback context in libsolc
2019-11-22 11:42:39 +00:00
Leonardo Alt
ddc478e3e4
Add CallbackKind and use it for the SMT solver
2019-11-21 22:10:21 +00:00
chriseth
0201ff5a02
Merge pull request #7769 from ethereum/libsolc-doc
...
Document and clarify libsolc's interface
2019-11-21 22:57:32 +01:00
chriseth
a00f824479
Merge pull request #7773 from ethereum/develop
...
Merge develop into develop_060
2019-11-21 21:49:22 +01:00
Alex Beregszaszi
44c1f4a3bf
Change the error message of empty callback/error in libsolc
2019-11-21 19:53:16 +00:00
chriseth
a26dd5a428
Remove trailing spaces in output.
2019-11-21 20:09:03 +01:00
chriseth
d5e9271592
Merge pull request #7350 from ethereum/array-length-rvalue
...
Make `length` member read-only
2019-11-21 19:22:42 +01:00
Alex Beregszaszi
65d4b82cbf
Fix DAO test after recent solc-js updates
...
Updates on the "master_060" branch of solc-js removed the backwards compatibility.
2019-11-21 14:16:57 +00:00
Erik Kundt
26ab2d4c06
Splits out compilation only phase for external tests.
2019-11-21 00:00:27 +01:00
chriseth
8f2595957b
Merge pull request #7719 from ethereum/librarySignatuŕes
...
Add selector member to public and external library functions.
2019-11-20 18:43:14 +01:00
Leonardo Alt
72eff30778
Fix develop 060 merge
2019-11-20 13:49:40 +01:00
Leonardo Alt
389da5228e
Merge remote-tracking branch 'origin/develop' into merge_develop_060
2019-11-20 12:27:40 +01:00
Erik Kundt
01705efb70
Adds and updates Yul tests for push() and pop().
2019-11-20 12:04:47 +01:00
Daniel Kirchner
372df6b9e1
Implement array push and pop for yul and replace assignments in via yul tests.
2019-11-20 12:04:42 +01:00
chriseth
5deaac0849
Merge pull request #7740 from ethereum/istanbul
...
Enable support for Istanbul
2019-11-20 10:49:27 +01:00
Alex Beregszaszi
4d3aa6e99f
Update to EVMC7
...
This file was missed in 92745c7bfc
2019-11-20 00:18:32 +01:00
Alex Beregszaszi
978fccd133
Remove obsolete file from test/evmc
2019-11-20 00:18:32 +01:00
Erik Kundt
c184fe8e5b
Adjusts end-to-end tests to read-only array length.
2019-11-19 21:11:14 +01:00
Erik Kundt
7d6c0a50c2
Adjusts semantic tests to read-only array length.
2019-11-19 21:11:14 +01:00
Erik Kundt
d05afb34d6
Adjusts syntax tests to read-only array length.
2019-11-19 21:11:09 +01:00
chriseth
32f321e416
Merge pull request #7751 from ethereum/replace_boost_variant_std
...
Replace boost::variant by std::variant in libyul
2019-11-19 19:40:39 +01:00
chriseth
d696b3c92b
Merge pull request #7743 from ethereum/fixice-7558
...
Disallow conversion from ``super``
2019-11-19 18:52:33 +01:00
Alex Beregszaszi
2241c9181e
Add README into the test/evmc directory
2019-11-19 17:42:26 +01:00
Leonardo Alt
be849b3c47
Replace boost::variant by std::variant in libyul
2019-11-19 17:23:18 +01:00
Mathias Baumann
23cad71c88
Disallow conversion from `super
`
2019-11-19 17:14:11 +01:00
Alex Beregszaszi
17ed0f0898
Set costs to 0 for unreachable cases in GasCosts tests
2019-11-19 17:09:18 +01:00
Alex Beregszaszi
17f6a5a060
Update test expectations in GasCosts for ABIEncoderV2
2019-11-19 17:09:18 +01:00
Alex Beregszaszi
da50285ae3
Update test expectations in GasCostsTests
2019-11-19 17:09:18 +01:00
Alex Beregszaszi
cbb08ae3db
Add semantic test for SELFBALANCE in inline assembly
2019-11-19 17:09:18 +01:00
Alex Beregszaszi
fc2af72a3d
Add semantic test for CHAINID in inline assembly
2019-11-19 17:09:18 +01:00
chriseth
0033d63522
Run more tests on istanbul.
2019-11-19 17:09:18 +01:00
Alex Beregszaszi
840aba8929
Add new gas price for deployed bytecode (EIP2028)
2019-11-19 17:09:18 +01:00
Alex Beregszaszi
71a310a2ea
Run fuzzer for istanbul
2019-11-19 17:09:18 +01:00
Mathias Baumann
eec1998a89
Update evmone version to v0.3.0 in docs and scripts
2019-11-19 16:49:43 +01:00
Erik Kundt
5020e186da
Adjusts compilation tests to read-only array length.
2019-11-19 16:09:21 +01:00
Erik K
94272d44aa
Merge pull request #7745 from ethereum/develop
...
Merge develop into develop_060
2019-11-19 15:30:31 +01:00
chriseth
6797879128
Merge pull request #7647 from ethereum/virtual-5424
...
Implement virtual keyword
2019-11-19 13:21:27 +01:00
Alex Beregszaszi
9a124101ba
Set chain_id in EVMHost
2019-11-19 12:28:18 +01:00
Alex Beregszaszi
6b198a261b
Support Istanbul in EVMHost
2019-11-19 12:21:06 +01:00
Alex Beregszaszi
1432f0ad28
Adapt EVMHost for EVMC7
2019-11-19 12:21:03 +01:00
Erik Kundt
8faa6ffeaf
Adjusts syntax and semantic tests to 0.6.0
2019-11-19 12:10:07 +01:00
chriseth
234513d0a4
Merge pull request #7735 from ethereum/cmdline-test-fix
...
Fix CLI test on 060
2019-11-19 11:59:35 +01:00
Erik Kundt
5f3fdc2476
Fixes failing commandline test.
2019-11-19 11:28:42 +01:00
Leonardo Alt
e500a262ea
Fix SMTChecker tests for 060
2019-11-19 10:58:59 +01:00
Alex Beregszaszi
92745c7bfc
Update EVMC to 7
2019-11-18 23:22:21 +01:00
Bhargava Shastry
62ae015552
docker: Add versioning and edit naming scheme
2019-11-18 15:16:53 +01:00
Bhargava Shastry
a8a50c4e0e
Upgrade evmone to v0.2.0 and adapt fuzzer build
2019-11-18 15:16:53 +01:00
Leonardo Alt
d818746e0c
[SMTChecker] Fix ICE in abi.decode
2019-11-18 13:15:10 +01:00
Bhargava Shastry
505b5deaf9
Add chainid and selfbalance opcodes to yul proto converter and enable it
...
in the yul proto differential fuzzer.
2019-11-18 09:26:00 +01:00
Daniel Kirchner
a0ae36ba70
Add selector member to public and external library functions.
2019-11-15 16:12:29 +01:00
chriseth
216e1749f4
Merge remote-tracking branch 'origin/develop' into develop_060
2019-11-14 13:42:46 +01:00
chriseth
766309b6e4
Merge pull request #7713 from ethereum/no-lib-instance-7625
...
Disallow variables of library types
2019-11-14 13:39:56 +01:00
Mathias Baumann
0891b9451b
Disallow variables of library types
2019-11-14 13:20:31 +01:00
chriseth
a667384517
Merge pull request #7712 from ethereum/fixIstanbulAsmParsing
...
Fix assembly parsing by passing evm version.
2019-11-14 13:20:15 +01:00
chriseth
b099374d8c
Fix assembly parsing by passing evm version.
2019-11-14 13:06:36 +01:00
chriseth
8d46f39643
Merge pull request #7707 from ethereum/smt_ice_implicit_conversion
...
[SMTChecker] Fix ICE in string literal to fixed bytes conversion
2019-11-14 11:52:58 +01:00
Mathias Baumann
caa127e2a8
Make `abstract
` keyword instead of reserved
2019-11-14 11:49:39 +01:00
Mathias Baumann
5b8ff78176
Implement virtual keyword
2019-11-14 11:49:39 +01:00
chriseth
f6191a7183
Merge pull request #7709 from ethereum/overloadMsgForMagic
...
Reconstruct function definition for magic variables in overload error message.
2019-11-14 11:24:54 +01:00
Leonardo Alt
5f43b8dbeb
Output the storage layout of a contract via storageLayout artifact
2019-11-14 10:19:17 +01:00
chriseth
06588cde76
Reconstruct function definition for magic variables in overload error message.
2019-11-14 10:13:22 +01:00
Leonardo Alt
8efacfb545
[SMTChecker] Fix ICE in string literal to fixed bytes implicit conversion
2019-11-13 22:25:18 +01:00
Leonardo Alt
e3652627fd
[SMTChecker] Fix ICE in CHC when function used as argument
2019-11-13 15:11:30 +01:00
Mathias Baumann
7d4e4b6088
Parse "virtual" keyword
2019-11-13 13:28:01 +01:00
chriseth
c0cf96cbc1
Merge pull request #7699 from ethereum/test-require-str
...
Test `require` with string literals
2019-11-13 12:20:23 +01:00
djudjuu
e437443645
Inline assembly to AST json export
2019-11-13 12:13:22 +01:00
Mathias Baumann
c74b1daef2
Test require
with string literals
...
fixes #6651
2019-11-13 12:01:25 +01:00
Daniel Kirchner
ce7268272d
Allow obtaining the address of a library by conversion to `address
`.
2019-11-12 17:09:13 +01:00
chriseth
a7e133b95c
Merge pull request #7696 from ethereum/semanticsTestsLibraryDeployment
...
Add support for external libraries to extracted semantics tests.
2019-11-12 15:50:36 +01:00
Leonardo
684ccea6f0
Merge pull request #7697 from ethereum/develop
...
Merge develop into develop_060
2019-11-12 15:30:34 +01:00
Daniel Kirchner
c7e3318dba
Add support for external libraries to extracted semantics tests.
2019-11-12 15:19:04 +01:00
Leonardo Alt
dc2dff839c
[SMTChecker] Remove flaky tests until we fix the SMTChecker tests
2019-11-12 12:58:42 +01:00
Daniel Kirchner
8148619d5b
Merge branch 'develop' into develop_060
2019-11-12 10:32:41 +01:00
Leonardo Alt
b323134ef0
[SMTChecker] Update test expectations for z3 4.8.6
2019-11-11 18:43:59 +01:00
chriseth
c68b672d9c
Merge pull request #7673 from ethereum/switch-external-forks
...
Switch to external forks of Gnosis and Zeppelin
2019-11-11 17:17:45 +01:00
chriseth
2e5a42836c
Merge pull request #7681 from ethereum/develop
...
Merge develop into develop_060
2019-11-11 16:42:03 +01:00
Christian Parpart
f15d47f165
Yul: Remove obsoleted FunctionalInstruction.
2019-11-11 16:04:39 +01:00
Erik Kundt
af790cec5e
Switches to forks of external projects.
2019-11-11 13:14:56 +01:00
chriseth
a5f0422dcc
Merge pull request #7662 from ethereum/cmakeNoGlobInTests
...
Do not rely on cmake's GLOB for test/
2019-11-10 15:28:11 +01:00
Leonardo Alt
5dacaf57bc
Fix ICE in FixedBytes IndexAccess
2019-11-08 17:29:40 +01:00
Daniel Kirchner
25a933a906
Do not rely on cmake's GLOB for test/
2019-11-08 16:12:42 +01:00
chriseth
a081b720b9
Merge pull request #7587 from ethereum/abiv2-returndata-fuzz
...
Abiv2 returndata fuzz
2019-11-07 15:03:14 +01:00
chriseth
138ee647f1
Provide different options for reason strings.
2019-11-07 14:13:53 +01:00
Daniel Kirchner
108992c335
Merge pull request #7640 from ethereum/smt_fix_060
...
[SMTChecker] Fix override tests
2019-11-07 14:10:10 +01:00
chriseth
c0b27d0bc1
Merge pull request #7648 from ethereum/inlineAssemblyShadowing
...
Error on shadowing and invalid names in inline assembly
2019-11-07 13:31:09 +01:00
Daniel Kirchner
0556f64722
Analyze inline assembly variable declarations for invalid or shadowing names.
2019-11-07 13:04:37 +01:00
Leonardo Alt
fc945880d1
[SMTChecker] Fix override tests
2019-11-07 11:49:32 +01:00
Alex Beregszaszi
18542ebf31
Use evmc_load_and_configure to support passing EVMC options
2019-11-07 10:42:41 +00:00
Alex Beregszaszi
882cd3e285
Update EVMC to 6.3.1
2019-11-07 10:41:14 +00:00
Alex Beregszaszi
f77d7c2dc7
Ensure that EVMC capability is checked after loading evmone
2019-11-07 00:27:46 +00:00
Bhargava Shastry
9772cc44a0
abiv2 proto fuzzer: Fuzz return data coding
2019-11-06 23:42:10 +01:00
chriseth
21e65076b3
Merge pull request #7650 from ethereum/develop
...
Merge develop into develop_060
2019-11-06 21:56:55 +01:00
cd10012
a94d22e5fe
Add documentation for extractReturnParameterDocs
2019-11-06 21:45:01 +01:00
cd10012
16fe59b7b4
Implement @erak review notes by creating function and adding constructor test
...
Update 060 doc with natspec change
Add two more tests with mixed usage
Fix solc-js
fix changelog
2019-11-06 21:44:59 +01:00
cd10012
f598b1515f
Give unamed parameters unique keys and update tests to new spec
...
Fix whitespace
2019-11-06 21:44:34 +01:00
cd10012
18fe693fdd
Add unamed return param test and check size in conditional
2019-11-06 21:44:09 +01:00
cd10012
b3ae601e88
Refactor to have multiple return params
2019-11-06 21:44:09 +01:00
chriseth
aa8de4404e
Merge pull request #7610 from ethereum/fix-7472
...
yul proto fuzzer: Increase step limit for optimized code
2019-11-06 21:11:51 +01:00
Leonardo Alt
10e70b8603
[SMTChecker] Support inheritance and resolve overrides
2019-11-06 11:00:06 +01:00
chriseth
081845d775
EWasm binary transform.
2019-11-05 19:58:55 +01:00
chriseth
4d99bf68f4
Merge pull request #7638 from ethereum/develop
...
Merge develop into develop_060
2019-11-05 17:33:54 +01:00
chriseth
5388c919f0
Some changes to "abstract".
2019-11-05 13:55:31 +01:00
chriseth
cac2e843e6
Merge pull request #7618 from ethereum/addMoreAbstractKeywordsInTests
...
Add some more abstract keywords in test to make sure the correct property is tested.
2019-11-05 13:38:21 +01:00
Leonardo Alt
c5e081dc8c
[SMTChecker] Refactor CHC loops and add if blocks
2019-11-05 09:28:59 +01:00
chriseth
46ac16d25c
Merge remote-tracking branch 'origin/develop' into develop_060
2019-11-04 19:09:11 +01:00
Bhargava Shastry
6a55949c04
yul proto fuzzer: Increase step limit upper bound for optimized code
2019-11-04 18:38:56 +01:00
chriseth
60b97bfb43
Fix test that resulted from merge conflict.
2019-11-04 18:06:43 +01:00
Leonardo
1eac3d1d83
Merge pull request #7582 from ethereum/smt_multid_array_assignment
...
[SMTChecker] Support assignments to m-d arrays and mappings
2019-11-04 17:37:33 +01:00
chriseth
7c258873bd
Add some more abstract keywords in test to make sure the correct property is tested.
2019-11-04 17:26:38 +01:00
Daniel Kirchner
3321fc56ea
Split fallback function and introduce "fallback()" and "receive()" syntax.
2019-11-04 17:17:58 +01:00
chriseth
e7c4378ce7
Merge pull request #7516 from ethereum/abiv2-proto-struct
...
Abiv2 proto struct
2019-11-04 17:04:16 +01:00
chriseth
62aa20137c
Merge pull request #7600 from ethereum/TypeConversionOnTheFly
...
[WASM] Inject type conversions on the fly if needed.
2019-11-04 16:20:57 +01:00
Bhargava Shastry
04becb9458
Minor refactoring
2019-11-04 15:47:04 +01:00
Bhargava Shastry
12ed08eddb
Place upper bound number on number of array dimensions
2019-11-04 15:47:04 +01:00
Bhargava Shastry
3cfeca33c1
Abiv2 proto fuzzer: Refactor and add support for structs
2019-11-04 15:47:04 +01:00
chriseth
5392532d70
Fix override error message.
2019-11-04 13:37:23 +01:00
chriseth
08cf616157
Merge pull request #7609 from ethereum/fix-7608
...
yul proto fuzzer: Catch exception early and propagate termination reason
2019-11-04 13:29:50 +01:00
Alexander Arlt
c908c16acd
Remove InternalCompilerError on abstract contract instantiation.
2019-11-01 14:54:47 -05:00
Alexander Arlt
cd3ad73b5a
Update tests.
2019-11-01 14:54:47 -05:00
Alexander Arlt
e87924a96e
Update soltest related tests.
2019-11-01 14:54:47 -05:00
Alexander Arlt
54c5e604e5
Add new tests.
2019-11-01 14:54:47 -05:00
chriseth
8337de5189
[WASM] Inject type conversions on the fly if needed.
2019-11-01 15:44:39 +01:00
chriseth
8780f2d595
Merge pull request #7604 from ethereum/datasizeOffsetSingle
...
[WASM] datasize and dataoffset only return a single value.
2019-11-01 15:39:50 +01:00
chriseth
cca7f01199
Tests for conditional unsimplifier
2019-11-01 14:07:25 +01:00
chriseth
ce87f11885
Test updates
2019-11-01 14:01:56 +01:00
chriseth
61a2d44f38
Conditional unsimplifier
2019-11-01 14:01:56 +01:00
chriseth
21b9606ed3
Test updates.
2019-11-01 14:01:56 +01:00
chriseth
19ccdfb0b3
No into body.
2019-11-01 14:01:56 +01:00
chriseth
5d6e983be3
Conditional simplifier.
2019-11-01 14:01:56 +01:00
chriseth
7f1593baa0
[WASM] datasize and dataoffset only return a single value.
2019-11-01 13:52:49 +01:00
Bhargava Shastry
e4ba1c02e8
yul proto fuzzer: Catch exception early and propagate termination reason to harness
2019-11-01 12:26:35 +01:00
Bhargava Shastry
edc5059208
yul proto: Add leave statement
2019-11-01 11:18:05 +01:00
chriseth
21227d748c
Update polyfill and set name.
2019-10-31 18:51:19 +01:00
chriseth
3d1123cf61
Merge pull request #7599 from ethereum/fixLocalGlobalWast
...
Fix local and globals wast functions.
2019-10-31 18:14:42 +01:00
chriseth
42b8c98567
Merge remote-tracking branch 'origin/develop' into develop_060
2019-10-31 18:03:25 +01:00
chriseth
04c62e2dc3
Fix local and globals wast functions.
2019-10-31 17:41:31 +01:00
chriseth
59c4d62b21
Merge pull request #7595 from ethereum/colony-develop-060
...
Switches to Colony fork temporarily
2019-10-31 17:39:30 +01:00
Leonardo Alt
80a790b5c3
Remove solc-js DAO tests replacement
2019-10-31 16:16:13 +01:00
Erik Kundt
38f6a58bac
Switches to Colony fork temporarly.
2019-10-31 14:26:33 +01:00
Mathias Baumann
6c6a9054b2
Implement override checking
2019-10-30 17:31:33 +01:00
Mathias Baumann
20e227afb5
Ensure list of overrides consists of contracts
2019-10-30 17:31:33 +01:00
Mathias Baumann
b76106fc4a
Parse override keyword for modifier definitions
2019-10-30 17:31:33 +01:00
Erik Kundt
ba8356f093
Updates fixed version pragma in ext. truffle tests.
2019-10-30 14:33:19 +01:00
chriseth
d605f89167
Merge pull request #7548 from ethereum/fixWasmLayout
...
Wasm: Fix layout for text conversion.
2019-10-29 17:52:34 +01:00
chriseth
499fe57d33
Tests
2019-10-29 14:32:16 +01:00
chriseth
91a92a01d5
Test updates.
2019-10-29 14:32:16 +01:00
chriseth
ceb8ee9124
[Yul] leave statement.
2019-10-29 14:32:16 +01:00
chriseth
5d906cd58d
Merge pull request #7568 from ethereum/fixtest
...
Fix failing tests on ArchLinux and potentially MacOS
2019-10-29 12:37:51 +01:00
Mathias Baumann
b3a5c9c9c0
Fix failing tests on ArchLinux and potentially MacOS
2019-10-29 12:02:50 +01:00