Open cb-elileers opened 5 months ago
We are working to improve our support Yul to handle this case. In the meantime, you can use --skip-assembly
to avoid hitting this error (at least it worked in a case which I believe is the same here https://github.com/crytic/slither/issues/2160)
We are working to improve our support Yul to handle this case. In the meantime, you can use
--skip-assembly
to avoid hitting this error (at least it worked in a case which I believe is the same here #2160)
@0xalpharush Having a similar issue with a different file, and --skip-assembly
is not resolving it. Any idea what it could be?
ERROR:SlitherSolcParsing:
Failed to convert IR to SSA for stdStorageSafe contract. Please open an issue https://github.com/crytic/slither/issues.
Traceback (most recent call last):
File "/Users/carlosflores/Library/Python/3.9/lib/python/site-packages/slither/__main__.py", line 814, in main_impl
) = process_all(filename, args, detector_classes, printer_classes)
File "/Users/carlosflores/Library/Python/3.9/lib/python/site-packages/slither/__main__.py", line 102, in process_all
) = process_single(compilation, args, detector_classes, printer_classes)
File "/Users/carlosflores/Library/Python/3.9/lib/python/site-packages/slither/__main__.py", line 80, in process_single
slither = Slither(target, ast_format=ast, **vars(args))
File "/Users/carlosflores/Library/Python/3.9/lib/python/site-packages/slither/slither.py", line 135, in __init__
self._init_parsing_and_analyses(kwargs.get("skip_analyze", False))
File "/Users/carlosflores/Library/Python/3.9/lib/python/site-packages/slither/slither.py", line 155, in _init_parsing_and_analyses
raise e
File "/Users/carlosflores/Library/Python/3.9/lib/python/site-packages/slither/slither.py", line 151, in _init_parsing_and_analyses
parser.analyze_contracts()
File "/Users/carlosflores/Library/Python/3.9/lib/python/site-packages/slither/solc_parsing/slither_compilation_unit_solc.py", line 541, in analyze_contracts
self._convert_to_slithir()
File "/Users/carlosflores/Library/Python/3.9/lib/python/site-packages/slither/solc_parsing/slither_compilation_unit_solc.py", line 774, in _convert_to_slithir
raise e
File "/Users/carlosflores/Library/Python/3.9/lib/python/site-packages/slither/solc_parsing/slither_compilation_unit_solc.py", line 769, in _convert_to_slithir
contract.convert_expression_to_slithir_ssa()
File "/Users/carlosflores/Library/Python/3.9/lib/python/site-packages/slither/core/declarations/contract.py", line 1502, in convert_expression_to_slithir_ssa
func.generate_slithir_ssa(all_ssa_state_variables_instances)
File "/Users/carlosflores/Library/Python/3.9/lib/python/site-packages/slither/core/declarations/function_contract.py", line 134, in generate_slithir_ssa
compute_dominance_frontier(self.nodes)
File "/Users/carlosflores/Library/Python/3.9/lib/python/site-packages/slither/core/dominators/utils.py", line 98, in compute_dominance_frontier
assert runner.immediate_dominator
AssertionError
ERROR:root:Error in .
ERROR:root:Traceback (most recent call last):
File "/Users/carlosflores/Library/Python/3.9/lib/python/site-packages/slither/__main__.py", line 814, in main_impl
) = process_all(filename, args, detector_classes, printer_classes)
File "/Users/carlosflores/Library/Python/3.9/lib/python/site-packages/slither/__main__.py", line 102, in process_all
) = process_single(compilation, args, detector_classes, printer_classes)
File "/Users/carlosflores/Library/Python/3.9/lib/python/site-packages/slither/__main__.py", line 80, in process_single
slither = Slither(target, ast_format=ast, **vars(args))
File "/Users/carlosflores/Library/Python/3.9/lib/python/site-packages/slither/slither.py", line 135, in __init__
self._init_parsing_and_analyses(kwargs.get("skip_analyze", False))
File "/Users/carlosflores/Library/Python/3.9/lib/python/site-packages/slither/slither.py", line 155, in _init_parsing_and_analyses
raise e
File "/Users/carlosflores/Library/Python/3.9/lib/python/site-packages/slither/slither.py", line 151, in _init_parsing_and_analyses
parser.analyze_contracts()
File "/Users/carlosflores/Library/Python/3.9/lib/python/site-packages/slither/solc_parsing/slither_compilation_unit_solc.py", line 541, in analyze_contracts
self._convert_to_slithir()
File "/Users/carlosflores/Library/Python/3.9/lib/python/site-packages/slither/solc_parsing/slither_compilation_unit_solc.py", line 774, in _convert_to_slithir
raise e
File "/Users/carlosflores/Library/Python/3.9/lib/python/site-packages/slither/solc_parsing/slither_compilation_unit_solc.py", line 769, in _convert_to_slithir
contract.convert_expression_to_slithir_ssa()
File "/Users/carlosflores/Library/Python/3.9/lib/python/site-packages/slither/core/declarations/contract.py", line 1502, in convert_expression_to_slithir_ssa
func.generate_slithir_ssa(all_ssa_state_variables_instances)
File "/Users/carlosflores/Library/Python/3.9/lib/python/site-packages/slither/core/declarations/function_contract.py", line 134, in generate_slithir_ssa
compute_dominance_frontier(self.nodes)
File "/Users/carlosflores/Library/Python/3.9/lib/python/site-packages/slither/core/dominators/utils.py", line 98, in compute_dominance_frontier
assert runner.immediate_dominator
AssertionError
@strollinghome Are you on the latest version of Slither?
@0xalpharush works now; I was on an older version.
Hi i have version slither --0.10.3 windows
when i use command:
slither . --detect unused-import
**I get error**
'forge clean' running (wd: C:\Users\user\Desktop\project\project)
'forge config --json' running
'forge build --build-info --skip */test/** */script/** --force' running (wd: C:\Users\user\Desktop\project\project)
ERROR:SlitherSolcParsing:
Failed to convert IR to SSA for project contract. Please open an issue https://github.com/crytic/slither/issues.
Traceback (most recent call last):
assert candidates
AssertionError
and when i use this command
slither . --skip-assembly --detect "unused-import"
i did not get information about unused imports
slither . --skip-assembly --detect "unused-import"
'forge clean' running (wd: C:\Users\user\Desktop\project\project)
'forge config --json' running
'forge build --build-info --skip */test/** */script/** --force' running (wd: C:\Users\user\Desktop\project\project)
INFO:Slither:. analyzed (37 contracts with 1 detectors), 0 result(s) found
Describe the issue:
We're inheriting EnumerableSetLib from Solady and there's an issue generating SlithIR.
It does a lot of nasty assembly optimizations, but it would be nice to still be able to run Slither against our project.
Code example to reproduce the issue:
https://github.com/Vectorized/solady/blob/main/src/utils/EnumerableSetLib.sol
Version:
0.10.2
Relevant log output: