Ошибка компиляции в pragma solidity 0.8.0 и др.

Когда я пытаюсь скомпилировать свой смарт-контракт bep20, он говорит:

ParserError: недопустимый токен. - ›bep-20.sol: 6: 53: | 6 | конструктор (uint256 initialSupply) public ERC20 («MilkyWayGalaxy», «MILKYGAL») {| ^

Я использую прагму solidity ^ 0.8.0; но последняя редакция - это прагма solidity ^ 0.8.4 ;. Я перепробовал все версии и все еще не работает.

Может ли кто-нибудь помочь мне решить эту проблему?


person Milky    schedule 12.05.2021    source источник


Ответы (1)


Вам необходимо использовать обычные кавычки " или апострофы ', в вашем фрагменте используется левая кавычка . Вероятно, это вызвано копированием с веб-сайта, на котором обычные кавычки заменяются левыми кавычками в качестве меры безопасности.

Кроме того, Solidity 0.8 выдаст предупреждение об использовании модификатора видимости в конструкторе. Удалите модификатор видимости public.

constructor(uint256 initialSupply) ERC20("MilkyWayGalaxy", "MILKYGAL") {
person Petr Hejda    schedule 12.05.2021
comment
Большое спасибо, Питер. Теперь проблема решена. Ты самый лучший :) Спасибо uuu - person Milky; 12.05.2021