Open 0xKurt opened 3 years ago
Hi Kurt,
Unfortunately, Solidity version 0.7.+ is not yet fully supported. We are aware of the issue and we are working on it.
Hi Kurt,
Unfortunately, Solidity version 0.7.+ is not yet fully supported. We are aware of the issue and we are working on it.
which versions supported?0.6.0 isn't support?
in Dockerfile:
ARG SOLC=0.7.4
Error message:
Step 18/21 : RUN cd /sec/securify/staticanalysis/souffle_analysis && souffle --dl-program=../dl-program --fact-dir=/sec/securify/staticanalysis/facts_in --output-dir=/sec/securify/staticanalysis/facts_out -L../libfunctors -w analysis.dl ---> Running in 9adeb4f73d41 Removing intermediate container 9adeb4f73d41 ---> 8bcefeb788a6 Step 19/21 : ENV LD_LIBRARY_PATH /sec/securify/staticanalysis/libfunctors ---> Running in c6387ab83f6d Removing intermediate container c6387ab83f6d ---> b3ccbab49d2b Step 20/21 : RUN cd /sec/securify/ && securify staticanalysis/testContract.sol ---> Running in e8843cf8adfd pragma directive defines a prior version to 0.7.4. Changing pragma version to 0.7.4.... 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_grammar_core.py", line 2295, in expression_value declaration = self.resolve() File "/sec/securify/solidity/v_0_5_x/solidity_grammar_core.py", line 2287, in resolve return self.resolve_reference(self.referenced_declaration) File "/sec/securify/solidity/v_0_5_x/solidity_grammar_core.py", line 46, in resolve_reference return self.root().ast_nodes_by_id().get(node_id, None) File "/sec/securify/solidity/v_0_5_x/solidity_grammar_core.py", line 161, in ast_nodes_by_id return {d.id: d for d in self.descendants() if d is not None} File "/sec/securify/solidity/v_0_5_x/solidity_grammar_core.py", line 161, in <dictcomp> return {d.id: d for d in self.descendants() if d is not None} File "/sec/securify/grammar/__init__.py", line 313, in descendants yield from ProductionOps.descendants(child) File "/sec/securify/grammar/__init__.py", line 313, in descendants yield from ProductionOps.descendants(child) File "/sec/securify/grammar/__init__.py", line 309, in descendants for child in ProductionOps.children(self): File "/sec/securify/grammar/__init__.py", line 300, in children child = getattr(self, name) AttributeError: 'VariableDeclaration__AllAttrsMixin' object has no attribute 'value' The above exception was the direct cause of the following exception: Traceback (most recent call last): File "/usr/local/bin/securify", line 11, in <module> load_entry_point('securify==0.0.1', 'console_scripts', 'securify')() File "/sec/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 "/sec/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 "/sec/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 'expression_value'. 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) PushdownRule next_cfgs_unlinked (ImplicitPushdown) PushdownRule push_cfgs (File "/sec/securify/solidity/v_0_5_x/solidity_grammar_core.py", line 163) SynthesizeRule contract_cfg_unlinked (File "/sec/securify/solidity/v_0_5_x/solidity_grammar_core.py", line 258) SynthesizeRule cfg (File "/sec/securify/solidity/v_0_5_x/solidity_grammar_core.py", line 529) SynthesizeRule cfg_unmodified (File "/sec/securify/solidity/v_0_5_x/solidity_grammar_core.py", line 507) SynthesizeRule cfg_body (File "/sec/securify/solidity/v_0_5_x/solidity_grammar_core.py", line 500) SynthesizeRule cfg (File "/sec/securify/solidity/v_0_5_x/solidity_grammar_core.py", line 869) SynthesizeRule cfg (File "/sec/securify/solidity/v_0_5_x/solidity_grammar_core.py", line 1520) SynthesizeRule cfg (File "/sec/securify/solidity/v_0_5_x/solidity_grammar_core.py", line 2013) SynthesizeRule expression_value (File "/sec/securify/solidity/v_0_5_x/solidity_grammar_core.py", line 2293) The command '/bin/sh -c cd /sec/securify/ && securify staticanalysis/testContract.sol' returned a non-zero code: 1
Hello, I have also encountered the same problem. Have you resolved it?
Hi Kurt,
Unfortunately, Solidity version 0.7.+ is not yet fully supported. We are aware of the issue and we are working on it.
Hello, I have also encountered the same problem. Have you resolved it?
in Dockerfile:
Error message: