crytic / crytic/slither

[Bug-Candidate]: Slither failed to reference external function using the IdentifierPath approach

Open
#2,839 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:

When a function with the same name as an external function is defined in Yul, it is not possible to reference the external function using the IdentifierPath approach.

### Code example to reproduce the issue:

```
contract State {
function f() public returns (uint) {
assembly {
function f() {}
}
return 0;
}
}

contract C {
uint y;

State s;

function f() public {
y = s.f();
}
}
```

### Version:

0.11.3

### Relevant log output:

```shell
ERROR:ConvertToIR:Function not found f
ERROR:ContractSolcParsing:Impossible to generate IR for C.f (20250207011159.sol#17-19):
'NoneType' object has no attribute 'type'
```

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.