Solidity

為什麼新的發出事件語法會產生編譯器錯誤

  • May 8, 2018

此範例在使用 emit 關鍵字時返回語法錯誤。

emit AuctionEnded(highestBidder, highestBid);

這是範常式式碼所在的文件。

http://solidity.readthedocs.io/en/develop/solidity-by-example.html#simple-open-auction

為什麼會出現語法錯誤?你如何真正呼叫一個事件pragma solidity ^0.4.21;

您還需要正確版本的編譯器。pragma solidity ^0.4.21只是一個提示,而不是具體編譯器的選擇。

如果你在https://remix.ethereum.org/嘗試這個,它預設載入 0.4.21 編譯器,它會工作得很好。當您將編譯器切換到較低版本(設置選項卡)時,您將收到語法錯誤。

更新松露

npm install tr​​uffle@4.1.5 -g

引用自:https://ethereum.stackexchange.com/questions/42054