mirror of
https://github.com/ethereum/solidity
synced 2023-10-03 13:03:40 +00:00
Merge pull request #5454 from ethereum/smt_math_functions
[SMTChecker] Abstract math functions
This commit is contained in:
@@ -12,3 +12,4 @@ contract C
|
||||
}
|
||||
|
||||
// ----
|
||||
// Warning: (153-156): Assertion checker does not yet implement tuples and inline arrays.
|
||||
|
||||
@@ -12,4 +12,5 @@ contract C
|
||||
}
|
||||
|
||||
// ----
|
||||
// Warning: (153-156): Assertion checker does not yet implement tuples and inline arrays.
|
||||
// Warning: (163-176): Assertion violation happens here
|
||||
|
||||
@@ -8,7 +8,6 @@ contract C
|
||||
}
|
||||
// ----
|
||||
// Warning: (86-101): Assertion checker does not yet support this expression.
|
||||
// Warning: (86-94): Assertion checker does not yet support this special variable.
|
||||
// Warning: (86-94): Assertion checker does not yet implement this type.
|
||||
// Warning: (86-94): Assertion checker does not yet support this global variable.
|
||||
// Warning: (86-101): Internal error: Expression undefined for SMT solver.
|
||||
// Warning: (79-106): Assertion violation happens here
|
||||
|
||||
@@ -0,0 +1,16 @@
|
||||
pragma experimental SMTChecker;
|
||||
|
||||
contract C
|
||||
{
|
||||
function f(bytes memory b) public pure returns (bytes memory) {
|
||||
bytes memory c = b;
|
||||
return b;
|
||||
}
|
||||
}
|
||||
// ----
|
||||
// Warning: (113-127): Unused local variable.
|
||||
// Warning: (113-127): Assertion checker does not yet support the type of this variable.
|
||||
// Warning: (58-72): Assertion checker does not yet support the type of this variable.
|
||||
// Warning: (95-107): Assertion checker does not yet support the type of this variable.
|
||||
// Warning: (130-131): Internal error: Expression undefined for SMT solver.
|
||||
// Warning: (130-131): Assertion checker does not yet implement this type.
|
||||
@@ -1,11 +1,11 @@
|
||||
{
|
||||
"auxiliaryInput":
|
||||
{
|
||||
"smtlib2responses":
|
||||
{
|
||||
"0x0426cd198d1e7123a28ffac2b759a666b86508ad046babf5166500dd6d8ed308": "unsat\n(error \"line 31 column 26: model is not available\")",
|
||||
"0xa51ca41ae407f5a727f27101cbc079834743cc8955f9f585582034ca634953f6": "sat\n((|EVALEXPR_0| 1))",
|
||||
"0xe9477f683ff20aa57fcb08682150f86c5917e1d4c0686b278ab9b73446d0682c": "sat\n((|EVALEXPR_0| 0))"
|
||||
}
|
||||
}
|
||||
"auxiliaryInput":
|
||||
{
|
||||
"smtlib2responses":
|
||||
{
|
||||
"0x47826ec8b83cfec30171b34f944aed6c33ecd12f02b9ad522ca45317c9bd5f45": "sat\n((|EVALEXPR_0| 1))",
|
||||
"0x734c058efe9d6ec224de3cf2bdfa6c936a1c9c159c040c128d631145b2fed195": "unsat\n",
|
||||
"0xa0c072acdbe5181dd56cbad8960cb5bb0b9e97fd598cfd895467bd73bbcca028": "sat\n((|EVALEXPR_0| 0))"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
{
|
||||
"auxiliaryInput":
|
||||
{
|
||||
"smtlib2responses":
|
||||
{
|
||||
"0xe9477f683ff20aa57fcb08682150f86c5917e1d4c0686b278ab9b73446d0682c": "sat\n((|EVALEXPR_0| 0))"
|
||||
}
|
||||
}
|
||||
"auxiliaryInput":
|
||||
{
|
||||
"smtlib2responses":
|
||||
{
|
||||
"0xa0c072acdbe5181dd56cbad8960cb5bb0b9e97fd598cfd895467bd73bbcca028": "sat\n((|EVALEXPR_0| 0))\n"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user