Commit Graph

15806 Commits

Author SHA1 Message Date
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
Daniel Kirchner
08f1b591f7
Merge pull request #8314 from ethereum/yul_conditionals
[Yul] Support conditionals
2020-02-13 22:58:41 +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
Leonardo
2cadf7ec5a
Merge pull request #8307 from ethereum/smt_split_1
[SMTChecker] Some refactoring
2020-02-12 15:25:56 -03: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
chriseth
f31332533f
Merge pull request #8231 from aarlt/fix_8102
Fix CompilerStack::loadMissingSources()
2020-02-12 17:39:10 +01:00
Alexander Arlt
d0eeca8014 Fix CompilerStack::loadMissingSources()
- FatalError Exception was not caught
- fixes #8102
2020-02-12 11:22:11 -05:00
chriseth
85348e9af7
Merge pull request #8233 from ethereum/solYulCalldataArrays
Implement calldata arrays for yul IR code generation.
2020-02-12 16:32:12 +01:00
chriseth
946f74748c
Merge pull request #8289 from ethereum/fix-8219
Switch nightly fuzzer build from ASan (slow) to UBSan (fast)
2020-02-12 16:18:32 +01:00
chriseth
814d4b6690
Merge pull request #8293 from ethereum/fixTypedEVMTypes
Fix builtin function types for typed evm dialect.
2020-02-12 16:16:35 +01:00
Leonardo Alt
d31a2a8d21 CHC clears indices so that initial is 0 and current is 1 2020-02-12 11:47:58 -03:00
Leonardo Alt
34d64761d9 Extract symbolicArguments function 2020-02-12 11:47:58 -03:00
Leonardo Alt
6451a4d2a0 Move VerificationTarget and add BMCVerificationTarget 2020-02-12 11:47:58 -03:00
Leonardo Alt
ba576bc6c3 Fix new namespaces 2020-02-12 10:35:44 -03:00
Daniel Kirchner
df0873d138 Implement calldata arrays for Yul IR 2020-02-12 14:00:29 +01:00
chriseth
b580a7a35d
Merge pull request #8257 from ethereum/irLocalVariables
Introduce IRVariable's for full IR tuple support.
2020-02-12 12:53:22 +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
6abe0a50b1 Define stack slot names in types. 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
chriseth
4644d4616f Fix builtin function types for typed evm dialect. 2020-02-11 17:17:41 +01:00
chriseth
aa15ea7e8e
Merge pull request #8250 from ethereum/run-opt-on-user-asm-8031
Run yul optimizer on user code without refs
2020-02-11 14:11:23 +01: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
Mathias Baumann
3a4cb016ff Add codestyle rule to prevent include ".." 2020-02-11 13:03:46 +01:00
chriseth
e635121bad
Merge pull request #8232 from aarlt/cmdline-standard-json-from-file
Add support for reading standard-json from file
2020-02-11 12:57:10 +01:00
Daniel Kirchner
5214cb0e76
Merge pull request #8288 from ethereum/fix-8108
yul proto fuzzer: Refactor dataoffset/size specification
2020-02-11 10:45:55 +01:00
Bhargava Shastry
3623026505 Switch nightly fuzzer build from ASan (slow) to UBSan (fast) 2020-02-11 14:43:37 +05:30
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
chriseth
64bb0d55e0
Merge pull request #8268 from a3d4/lineatposition-crlf
Avoided trailing '\r' in CharStream::lineAtPosition().
2020-02-10 15:58:52 +01:00
chriseth
6b99c46b43
Merge pull request #8261 from a3d4/fix-8020-source-spans-file
Fix printing source for missing pragma.
2020-02-10 15:57:34 +01:00
Leonardo Alt
36928c7a35 Add reason string for internal reverts 2020-02-10 11:57:20 -03:00
a3d4
be1d92c836 Avoided trailing \r in CharStream::lineAtPosition(). 2020-02-10 01:16:55 +01:00
a3d4
e3d6a3e44e Updated expectations. 2020-02-09 17:29:13 +01:00
a3d4
b3b8441aa4 Fix printing source for missing pragma. 2020-02-09 02:28:47 +01:00
chriseth
e8eb1f2d14
Merge pull request #8259 from brianmcmichael/brianmcmichael-patch-1
Conform constants to style guide
2020-02-07 11:59:44 +01:00
chriseth
462cd43207
Merge pull request #8258 from ethereum/someFixesToSyntaxTests
[Yul] Some fixes to syntax tests
2020-02-07 11:59:04 +01:00
Brian L. McMichael
b39814a4f8
Conform constants to style guide
Constants should conform to style guide at https://solidity.readthedocs.io/en/latest/style-guide.html#constants
2020-02-06 16:39:09 -05: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