Skip to content

0.6.2_Plato_v4.2

Compare
Choose a tag to compare
@Lredhdx Lredhdx released this 06 May 03:38
· 2349 commits to master_0.6.x since this release
e3d402b

TRON Solidity compiler 0.6.2 already supports Ethereum Solidity 0.6.2.
This release supports three new instructions introduced in TIP-157.

Requirements

  • Developers can only use these new instructions after proposal TIP-157 has been approved in TRON mainnet.
  • Developers can use other feature before proposal TIP-157 has been approved in TRON mainnet.

New Features

  • Add FREEZE instruction: Smart contract can freeze balance to get resources or delegate resources for others.
  • Add UNFREEZE instruction: Smart contract can unfreeze balance.
  • Add FREEZEEXPIRETIME instruction: Smart contract can get freeze expire time, return in seconds.
  • Allow accessing external functions via contract and interface names to obtain their selector.
  • Allow interfaces to inherit from other interfaces.
  • Allow gas and value to be set in external function calls using c.f{gas: 10000, value: 4 trx}().
  • Allow specifying the salt for contract creations and thus the create2 opcode using new C{salt: 0x1234, value: 1 trx}(arg1, arg2).
  • Inline Assembly: Support literals true and false.

Important Bugfixes

  • Commandline interface: Only activate yul optimizer if --optimize is given.
  • Fixes internal compiler error on explicitly calling unimplemented base functions.

Build System

  • Switch to building soljson.js with an embedded base64-encoded wasm binary.