From 9e970eb9faee9e1921cc41509ad0cc354f3e555b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ernesto=20Garc=C3=ADa?= Date: Tue, 3 Sep 2024 09:04:18 -0600 Subject: [PATCH] Guidelines for named return values (#5178) --- GUIDELINES.md | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/GUIDELINES.md b/GUIDELINES.md index 97fa7290c..a1418d652 100644 --- a/GUIDELINES.md +++ b/GUIDELINES.md @@ -131,6 +131,13 @@ In addition to the official Solidity Style Guide we have a number of other conve abstract contract AccessControl is ..., { ``` +* Return values are generally not named, unless they are not immediately clear or there are multiple return values. + + ```solidity + function expiration() public view returns (uint256) { // Good + function hasRole() public view returns (bool isMember, uint32 currentDelay) { // Good + ``` + * Unchecked arithmetic blocks should contain comments explaining why overflow is guaranteed not to happen. If the reason is immediately apparent from the line above the unchecked block, the comment may be omitted. * Custom errors should be declared following the [EIP-6093](https://eips.ethereum.org/EIPS/eip-6093) rationale whenever reasonable. Also, consider the following: