Commit Graph
2734 Commits
Author SHA1 Message Date
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