[PATCH] D86233: [LangRef] Define mayprogress attribute
Ralf via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Fri Sep 4 08:58:18 PDT 2020
RalfJung added a comment.
In D86233#2256563 <https://reviews.llvm.org/D86233#2256563>, @jdoerfert wrote:
> In D86233#2256076 <https://reviews.llvm.org/D86233#2256076>, @RalfJung wrote:
>
>> Shouldn't it be "maynotprogress" (or "maybenoprogress" or so)? *Every* function *may* progress, but only those with this marker are also allowed to not "make progress".
>
> The way to read it is:
> Every function *mustmakeprogress* unless it has the *mayprogress* attribute.
>
> So "may" is either they do or they don't, both are fine.
> And, "must" means they have to or UB.
I understand. But this is not how the word "may" is usually used. When I say "you may do X", that typically implies that usually, X is not a thing you may do.
This can certainly be explained away, but the first impression people are going to have before reading the docs is likely going to be wrong.
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D86233/new/
https://reviews.llvm.org/D86233
More information about the llvm-commits
mailing list