mirror of
https://github.com/ethereum/solidity
synced 2023-10-03 13:03:40 +00:00
Implement virtual keyword
This commit is contained in:
+1
-1
@@ -1,5 +1,5 @@
|
||||
contract C {
|
||||
fallback() external {}
|
||||
fallback() virtual external {}
|
||||
}
|
||||
contract D is C {
|
||||
fallback() override external {}
|
||||
|
||||
+1
-1
@@ -1,5 +1,5 @@
|
||||
contract C {
|
||||
fallback() external {}
|
||||
fallback() virtual external {}
|
||||
}
|
||||
contract D is C {
|
||||
}
|
||||
|
||||
+2
-2
@@ -1,8 +1,8 @@
|
||||
contract C {
|
||||
fallback() external {}
|
||||
fallback() virtual external {}
|
||||
}
|
||||
contract D is C {
|
||||
fallback() external {}
|
||||
}
|
||||
// ----
|
||||
// TypeError: (58-80): Overriding function is missing 'override' specifier.
|
||||
// TypeError: (66-88): Overriding function is missing 'override' specifier.
|
||||
|
||||
+2
-2
@@ -1,5 +1,5 @@
|
||||
contract C {
|
||||
fallback() external {}
|
||||
fallback() virtual external {}
|
||||
}
|
||||
contract D is C {
|
||||
}
|
||||
@@ -7,4 +7,4 @@ contract E is D {
|
||||
fallback() external {}
|
||||
}
|
||||
// ----
|
||||
// TypeError: (78-100): Overriding function is missing 'override' specifier.
|
||||
// TypeError: (86-108): Overriding function is missing 'override' specifier.
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
contract C {
|
||||
receive() external payable {}
|
||||
receive() virtual external payable {}
|
||||
}
|
||||
contract D is C {
|
||||
receive() override external payable {}
|
||||
|
||||
+1
-1
@@ -1,5 +1,5 @@
|
||||
contract C {
|
||||
receive() external payable {}
|
||||
receive() virtual external payable {}
|
||||
}
|
||||
contract D is C {
|
||||
}
|
||||
|
||||
+2
-2
@@ -1,8 +1,8 @@
|
||||
contract C {
|
||||
receive() external payable {}
|
||||
receive() virtual external payable {}
|
||||
}
|
||||
contract D is C {
|
||||
receive() external payable {}
|
||||
}
|
||||
// ----
|
||||
// TypeError: (65-94): Overriding function is missing 'override' specifier.
|
||||
// TypeError: (73-102): Overriding function is missing 'override' specifier.
|
||||
|
||||
+2
-2
@@ -1,5 +1,5 @@
|
||||
contract C {
|
||||
receive() external payable {}
|
||||
receive() virtual external payable {}
|
||||
}
|
||||
contract D is C {
|
||||
}
|
||||
@@ -7,4 +7,4 @@ contract E is D {
|
||||
receive() external payable {}
|
||||
}
|
||||
// ----
|
||||
// TypeError: (85-114): Overriding function is missing 'override' specifier.
|
||||
// TypeError: (93-122): Overriding function is missing 'override' specifier.
|
||||
|
||||
Reference in New Issue
Block a user