+Mike, Liming On Mon, Jul 20, 2020 at 14:49:46 +0100, Jessica Clarke wrote: > REF: https://bugzilla.tianocore.org/show_bug.cgi?id=1004 > > Being a compiler builtin, the type of __builtin_return_address is > already known to the compiler so no prototype is needed. Clang also > errors out when redeclaring certain builtins like this[1], though > currently only for ones with custom type checking. At the moment, > __builtin_return_address does not use custom type checking and so does > not trigger this error, however, the CHERI fork of LLVM, which will form > the basis of the toolchain for Arm's experimental Morello platform, does > use custom type checking for it, and so gives an error. Thus, simply > delete the unnecessary line. > > [1] > https://github.com/llvm/llvm-project/commit/41af97137572ad6d4dafc872e7ecf6bbb08d4984 > > Cc: Leif Lindholm <l...@nuviainc.com> > Signed-off-by: Jessica Clarke <jrt...@jrtc27.com> > --- > MdePkg/Include/Base.h | 1 - > 1 file changed, 1 deletion(-) > > diff --git a/MdePkg/Include/Base.h b/MdePkg/Include/Base.h > index 85a091b9d5..8e4271f6ea 100644 > --- a/MdePkg/Include/Base.h > +++ b/MdePkg/Include/Base.h > @@ -1273,7 +1273,6 @@ typedef UINTN RETURN_STATUS; > **/ > #define RETURN_ADDRESS(L) ((L == 0) ? _ReturnAddress() : (VOID *) 0) > #elif defined (__GNUC__) || defined (__clang__) > - void * __builtin_return_address (unsigned int level);
Agreed this looks somewhat bonkers. And I can't see any ill effects from dropping it, so: Reviewed-by: Leif Lindholm <l...@nuviainc.com> > /** > Get the return address of the calling function. > > -- > 2.20.1 > -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#62839): https://edk2.groups.io/g/devel/message/62839 Mute This Topic: https://groups.io/mt/75682100/21656 Group Owner: devel+ow...@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-