0.6.2_Plato_v4.2
Lredhdx
released this
06 May 03:38
·
2349 commits
to master_0.6.x
since this release
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 thecreate2
opcode usingnew C{salt: 0x1234, value: 1 trx}(arg1, arg2)
. - Inline Assembly: Support literals
true
andfalse
.
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.