eth-sri / securify2

Securify v2.0
Apache License 2.0
586 stars 136 forks source link

Error on check sol with docker #33

Open vKolerts opened 2 years ago

vKolerts commented 2 years ago
Traceback (most recent call last):
  File "/sec/securify/grammar/attributes/evaluators/evaluator_demand_iterative.py", line 53, in evaluate
    result = super()._execute_rule(rule, arguments)
  File "/sec/securify/grammar/attributes/evaluators/evaluator_base.py", line 42, in _execute_rule
    return rule.func(**{name: node for name, node in arguments.items()})
  File "/sec/securify/solidity/v_0_5_x/solidity_rules_constructors.py", line 203, in cfg_state_init
    return CfgSimple.concatenate(*(cfg_state_inits[c] for c in reversed(self.linearized_base_contracts)))
  File "/sec/securify/solidity/v_0_5_x/solidity_rules_constructors.py", line 203, in <genexpr>
    return CfgSimple.concatenate(*(cfg_state_inits[c] for c in reversed(self.linearized_base_contracts)))
KeyError: 1645

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "securify/__main__.py", line 286, in <module>
    main()
  File "securify/__main__.py", line 277, in main
    matches.extend(pattern.find_matches())
  File "/sec/securify/analyses/patterns/static/static_analysis_patterns.py", line 73, in find_matches
    static = analysis_context.static_analysis
  File "/sec/securify/analyses/analysis.py", line 88, in static_analysis
    self._static = self.config.static_analysis(self)
  File "securify/__main__.py", line 255, in <lambda>
    static_analysis=lambda t: static_analysis.analyze_cfg(t.cfg, **souffle_config),
  File "/sec/securify/analyses/analysis.py", line 81, in cfg
    self._cfg = self.config.cfg_compiler(self)
  File "securify/__main__.py", line 254, in <lambda>
    cfg_compiler=lambda t: solidity_cfg_compiler.compile_cfg(t.ast).cfg,
  File "/sec/securify/solidity/solidity_cfg_compiler.py", line 88, in compile_cfg
    cfg = ast_attr.cfg
  File "/sec/securify/grammar/attributes/evaluators/evaluator_demand_base.py", line 84, in __get__
    return self.__evaluator.evaluate(instance, self.__name)
  File "/sec/securify/grammar/attributes/evaluators/evaluator_demand_iterative.py", line 57, in evaluate
    f"Rule trace: {self.__rule_trace(dependency_path)}") from e
securify.grammar.attributes.AttributeGrammarError: Error during evaluation of rule 'cfg_state_init'. 
Rule trace: 
        SynthesizeRule cfg (File "/sec/securify/solidity/v_0_5_x/solidity_grammar_core.py", line 199)
        SynthesizeRule cfg (File "/sec/securify/solidity/v_0_5_x/solidity_grammar_core.py", line 272)
        SynthesizeRule cfg_constructor (File "/sec/securify/solidity/v_0_5_x/solidity_rules_constructors.py", line 154)
        SynthesizeRule cfg_state_init (File "/sec/securify/solidity/v_0_5_x/solidity_rules_constructors.py", line 198)