We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
1 parent ddcd29a commit 71102f4Copy full SHA for 71102f4
scripts/solhint-custom/index.js
@@ -75,13 +75,15 @@ module.exports = [
75
static ruleId = 'no-external-virtual';
76
77
FunctionDefinition(node) {
78
- // Skip constructor functions, interface definitions, and receive/fallback functions
+ // Skip constructor functions, interface definitions, receive/fallback functions,
79
+ // and governance/multicall functions which legitimately use external virtual
80
if (
81
node.isConstructor ||
82
node.parent.kind === 'interface' ||
83
node.name === '' || // receive/fallback functions have empty names
84
node.isReceiveEther ||
- node.isFallback
85
+ node.isFallback ||
86
+ /^(update|multicall)/.test(node.name) // Allow external virtual for update* and multicall functions
87
) {
88
return;
89
}
0 commit comments