crytic / crytic/slither

[Bug-Candidate]: slither failed to generate IR when code contains tuple assignment

Open
#2,643 0 comments 0 reactions 0 assignees View on GitHub
bug-candidate
Dominant language
Python
Stars
6.4k
Forks
1.1k
PR merge metrics
No merged PRs in 30d

Description

### Describe the issue:

Tests were conducted using solc versions 0.8.27 and 0.8.28, and both failed to generate IR. The bug persists in the latest release. Code:

```solidity
contract Test {
function test() private returns(int) {
int a = 3;
((, ), ) = ((7, 8), 9);
return a;
}
}
```

Run slither: `slither a.sol`

Output:

```
ERROR:SlitherSolcParsing:
Failed to generate IR for Test.test. Please open an issue https://github.com/crytic/slither/issues.
Test.test (a.sol#356-360):
a = 3
((None,None),None) = ((7,8),9)
a
Traceback (most recent call last):
...
```

### Code example to reproduce the issue:

```solidity
contract Test {
function test() private returns(int) {
int a = 3;
((, ), ) = ((7, 8), 9);
return a;
}
}
```

### Version:

0.11.0

### Relevant log output:

```shell

```

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.