mirror of
https://github.com/ethereum/solidity
synced 2023-10-03 13:03:40 +00:00
Changelog entry and tests.
This commit is contained in:
parent
4d7799eed4
commit
1e7a23a205
@ -3,7 +3,6 @@
|
||||
Language Features:
|
||||
* Allow public functions to override external functions.
|
||||
|
||||
|
||||
Compiler Features:
|
||||
* Build System: LLL is not built anymore by default. Must configure it with CMake as `-DLLL=ON`.
|
||||
* Code generator: Do not perform redundant double cleanup on unsigned integers when loading from calldata.
|
||||
@ -16,6 +15,7 @@ Compiler Features:
|
||||
Bugfixes:
|
||||
* Assembly output: Do not mix in/out jump annotations with arguments.
|
||||
* Code Generator: Annotate jump from calldata decoder to function as "jump in".
|
||||
* Type Checker: Properly detect different return types when overriding an external interface function with a public contract function.
|
||||
|
||||
Build System:
|
||||
* Emscripten: Upgrade to Emscripten SDK 1.37.21 and boost 1.67.
|
||||
|
@ -0,0 +1,10 @@
|
||||
interface I {
|
||||
function f() external pure returns (uint);
|
||||
}
|
||||
contract B is I {
|
||||
// The compiler used to have a bug where changing
|
||||
// the return type was fine in this situation.
|
||||
function f() public pure returns (uint, uint) {}
|
||||
}
|
||||
// ----
|
||||
// TypeError: (182-230): Overriding function return types differ.
|
@ -4,3 +4,4 @@ contract C {
|
||||
}
|
||||
// ----
|
||||
// DeclarationError: (17-66): Function with same name and arguments defined twice.
|
||||
// TypeError: (17-66): Overriding function return types differ.
|
||||
|
Loading…
Reference in New Issue
Block a user