我试图从欧姆BondDepository.sol契约编译代码,但是每次我这样做时,我都会从brownie那里得到这个错误
Compiling contracts...
Solc version: 0.7.5
Optimizer: Enabled Runs: 200
EVM Version: Istanbul
Generating build data...
File "C:\Users\provsalt\AppData\Local\Programs\Python\Python39\lib\site-packages\brownie\_cli\__main__.py", line 64, in main
importlib.import_module(f"brownie._cli.{cmd}").main()
File "C:\Users\provsalt\AppData\Local\Programs\Python\Python39\lib\site-packages\brownie\_cli\run.py", line 40, in main
active_project = project.load()
File "C:\Users\provsalt\AppData\Local\Programs\Python\Python39\lib\site-packages\brownie\project\main.py", line 751, in load
return Project(name, project_path)
File "C:\Users\provsalt\AppData\Local\Programs\Python\Python39\lib\site-packages\brownie\project\main.py", line 183, in __init__
self.load()
File "C:\Users\provsalt\AppData\Local\Programs\Python\Python39\lib\site-packages\brownie\project\main.py", line 238, in load
self._compile(changed, self._compiler_config, False)
File "C:\Users\provsalt\AppData\Local\Programs\Python\Python39\lib\site-packages\brownie\project\main.py", line 95, in _compile
build_json = compiler.compile_and_format(
File "C:\Users\provsalt\AppData\Local\Programs\Python\Python39\lib\site-packages\brownie\project\compiler\__init__.py", line 142, in compile_and_format
build_json.update(generate_build_json(input_json, output_json, compiler_data, silent))
File "C:\Users\provsalt\AppData\Local\Programs\Python\Python39\lib\site-packages\brownie\project\compiler\__init__.py", line 287, in generate_build_json
source_nodes, statement_nodes, branch_nodes = solidity._get_nodes(output_json)
File "C:\Users\provsalt\AppData\Local\Programs\Python\Python39\lib\site-packages\brownie\project\compiler\solidity.py", line 606, in _get_nodes
source_nodes = solcast.from_standard_output(output_json)
File "C:\Users\provsalt\AppData\Local\Programs\Python\Python39\lib\site-packages\solcast\main.py", line 33, in from_standard_output
source_nodes = set_dependencies(source_nodes)
File "C:\Users\provsalt\AppData\Local\Programs\Python\Python39\lib\site-packages\solcast\dependencies.py", line 18, in set_dependencies
contract.libraries = dict(
File "C:\Users\provsalt\AppData\Local\Programs\Python\Python39\lib\site-packages\solcast\dependencies.py", line 19, in <genexpr>
(_get_type_name(i.typeName), i.libraryName.name)
AttributeError: 'UsingForDirective' object has no attribute 'typeName'在查找此错误后,在第617行使用FixedPoint进行*时似乎是一个错误。与其使用这种语法,我如何才能修复它,使它不只是崩溃?坦率地说,我对稳健性很陌生,不明白这种语法是如何工作的。
发布于 2022-01-04 14:48:24
我想原因就在这串:
using FixedPoint for *;我消除了这个错误,改变了估价(.)
_value = totalValue.mul( FixedPoint.decode112with18( FixedPoint.fraction( amount_, totalSupply ) ) ).div( 1e18 );https://ethereum.stackexchange.com/questions/115375
复制相似问题