LGTM.com - false positive: py/unreachable-statement with assert
- Dominant language
- CodeQL
- Stars
- 10.1k
- Forks
- 2.1k
- Avg merge
- 2d 15h
- Merged PRs (30d)
- 141
Description
Platform: Python
**Description of the false positive**
`assert` calls will be ignored when using the `-O` option. Therefore some code shouldn't be considered as dead.
This is quite low priority. `-O` related bugs are very common, but no one really uses it. Linters have been fighting forever to know whether this should be taken into account, or simply discarded
**test.py**
```python
def hello():
assert False
return 1
print(hello())
```
**Results:**
- `python test.py` -> `AssertionError`
- `python -O test.py` -> `1`
**[Related doc:](https://docs.python.org/3/using/cmdline.html#cmdoption-o)**
> -O
> Remove assert statements and any code conditional on the value of \_\_debug\_\_. Augment the filename for compiled (bytecode) files by adding .opt-1 before the .pyc extension (see PEP 488). See also PYTHONOPTIMIZE.
**URL to the alert on the project page on LGTM.com**
https://lgtm.com/projects/g/secdev/scapy/snapshot/33177966dbe59a9c7cbed5b086f99b40c4b1ede7/files/scapy/fields.py?sort=name&dir=ASC&mode=heatmap#x551c9066f44c0ec2:1
Contributor guide
Assessment
This issue has not been assessed yet.