From: "Huang, Yanbo" <yanbo.huang@intel.com>
To: "devel@edk2.groups.io" <devel@edk2.groups.io>,
"Kinney, Michael D" <michael.d.kinney@intel.com>,
"rebecca@bsdio.com" <rebecca@bsdio.com>,
"Gao, Liming" <gaoliming@byosoft.com.cn>,
"Liu, Zhiguang" <zhiguang.liu@intel.com>,
Michael Kubacki <mikuback@linux.microsoft.com>,
Sean Brogan <sean.brogan@microsoft.com>
Subject: Re: [edk2-devel] [PATCH 2/2] MdePkg: Update code to be more C11 compliant by using __func__
Date: Thu, 23 Mar 2023 01:43:23 +0000 [thread overview]
Message-ID: <IA1PR11MB6170EF82479927FD6E25DDB3EF879@IA1PR11MB6170.namprd11.prod.outlook.com> (raw)
In-Reply-To: <CO1PR11MB492916A7225ECE6CD4B52569D2879@CO1PR11MB4929.namprd11.prod.outlook.com>
Hi Rebecca,
The commit message “Visual Studio versions before VS 2015 don't support __func__” may cause confuse since some of the older release of VS2015 also do not support __func__.
Some of my fellows report the error since they use the VS 2015 version before Update 3.
Best Regards,
Yanbo Huang
-----Original Message-----
From: devel@edk2.groups.io <devel@edk2.groups.io> On Behalf Of Michael D Kinney
Sent: Thursday, March 23, 2023 8:58 AM
To: devel@edk2.groups.io; rebecca@bsdio.com; Gao, Liming <gaoliming@byosoft.com.cn>; Liu, Zhiguang <zhiguang.liu@intel.com>; Michael Kubacki <mikuback@linux.microsoft.com>; Sean Brogan <sean.brogan@microsoft.com>
Cc: Kinney, Michael D <michael.d.kinney@intel.com>
Subject: Re: [edk2-devel] [PATCH 2/2] MdePkg: Update code to be more C11 compliant by using __func__
Hi Rebecca,
Using latest release would be my preference as well and what EDK II should recommend.
We should document that the min supported version of VS2015 Update 3.
Mike
> -----Original Message-----
> From: devel@edk2.groups.io <devel@edk2.groups.io> On Behalf Of Rebecca
> Cran
> Sent: Wednesday, March 22, 2023 10:46 AM
> To: Kinney, Michael D <michael.d.kinney@intel.com>;
> devel@edk2.groups.io; Gao, Liming <gaoliming@byosoft.com.cn>; Liu,
> Zhiguang <zhiguang.liu@intel.com>; Michael Kubacki
> <mikuback@linux.microsoft.com>; Sean Brogan
> <sean.brogan@microsoft.com>
> Subject: Re: [edk2-devel] [PATCH 2/2] MdePkg: Update code to be more
> C11 compliant by using __func__
>
> Can we not require that VS2015 Update 3 is installed?
>
> Do people have reasons to be running older builds, or is it just that
> they forget to install the updates?
>
>
> --
> Rebecca Cran
>
>
> On 3/22/23 10:58 AM, Kinney, Michael D wrote:
> > Hi Rebecca,
> >
> > It appears that some of the older release of VS2015 do not support
> > __func__.
> >
> > Can you please work on a patch that implements the workaround?
> >
> > Thanks,
> >
> > Mike
> >
> >> -----Original Message-----
> >> From: Kinney, Michael D <michael.d.kinney@intel.com>
> >> Sent: Friday, March 17, 2023 8:16 AM
> >> To: devel@edk2.groups.io; rebecca@bsdio.com; Gao, Liming
> >> <gaoliming@byosoft.com.cn>; Liu, Zhiguang <zhiguang.liu@intel.com>;
> >> Michael Kubacki <mikuback@linux.microsoft.com>; Sean Brogan
> >> <sean.brogan@microsoft.com>
> >> Cc: Kinney, Michael D <michael.d.kinney@intel.com>
> >> Subject: RE: [edk2-devel] [PATCH 2/2] MdePkg: Update code to be
> >> more C11 compliant by using __func__
> >>
> >> Hi Rebecca,
> >>
> >> For older compilers that do not support __func__, I believe a
> >> workaround could be added to define __func__ to __FUNCTION__. We
> >> do not need to do this for any of these patches. It can be
> >> something consumers can do if they really want to use an older compiler.
> >>
> >> You can try it out on VS2012 locally. If it works, then you can
> >> mention that workaround in the commit message.
> >>
> >> Do we have any information on GCC/CLANG compatibility for this feature?
> >>
> >> Mike
> >>
> >>> -----Original Message-----
> >>> From: devel@edk2.groups.io <devel@edk2.groups.io> On Behalf Of
> >>> Rebecca Cran
> >>> Sent: Friday, March 17, 2023 6:32 AM
> >>> To: Kinney, Michael D <michael.d.kinney@intel.com>;
> >>> devel@edk2.groups.io; Gao, Liming <gaoliming@byosoft.com.cn>; Liu,
> Zhiguang
> >>> <zhiguang.liu@intel.com>; Michael Kubacki
> >>> <mikuback@linux.microsoft.com>; Sean Brogan
> >>> <sean.brogan@microsoft.com>
> >>> Subject: Re: [edk2-devel] [PATCH 2/2] MdePkg: Update code to be
> >>> more C11 compliant by using __func__
> >>>
> >>> (+Michael Kubacki, Sean Brogan)
> >>>
> >>> Mike, Michael, Sean:
> >>>
> >>>
> >>> This change is going to break building edk2 with anything older
> >>> than Visual Studio 2015, which is where support for __func__ was added.
> >>>
> >>> I checked and currently it appears that VS2013 builds edk2 but
> >>> VS2012 has errors. Given that the stuart tools don't support
> >>> anything older than VS2017 I'm thinking this is okay, but I want
> >>> to double check before pushing this change.
> >>>
> >>>
> >>> --
> >>>
> >>> Rebecca Cran
> >>>
> >>>
> >>> On 3/14/23 2:40 PM, Kinney, Michael D wrote:
> >>>> Reviewed-by: Michael D Kinney <michael.d.kinney@intel.com>
> >>>>
> >>>>
> >>>>> -----Original Message-----
> >>>>> From: devel@edk2.groups.io <devel@edk2.groups.io> On Behalf Of
> >>>>> Rebecca Cran
> >>>>> Sent: Monday, March 13, 2023 7:20 PM
> >>>>> To: devel@edk2.groups.io; Kinney, Michael D
> >>>>> <michael.d.kinney@intel.com>; Gao, Liming
> >>>>> <gaoliming@byosoft.com.cn>; Liu, Zhiguang
> >>>>> <zhiguang.liu@intel.com>
> >>>>> Subject: Re: [edk2-devel] [PATCH 2/2] MdePkg: Update code to be
> >>>>> more C11 compliant by using __func__
> >>>>>
> >>>>> Mike,
> >>>>>
> >>>>>
> >>>>> I think your concerns with this patch were addressed?
> >>>>>
> >>>>> Could you add a Reviewed-by please?
> >>>>>
> >>>>>
> >>>>> Thanks.
> >>>>> Rebecca
> >>>>>
> >>>>>
> >>>>> On 2/9/23 6:01 PM, Michael D Kinney wrote:
> >>>>>> Hi Rebecca,
> >>>>>>
> >>>>>> Did this pass EDK II CI?
> >>>>>>
> >>>>>> This change does break EBC compiler builds. The following has
> >>>>>> to be added to MdePkg/Include/Ebc/ProcessorBind.h in order to use __func__ everywhere.
> >>>>>>
> >>>>>> #define __func__ __FUNCTION__
> >>>>>>
> >>>>>> I also see __FUNCTION__ used in many packages. I am wondering
> >>>>>> if we want to do this clean up if it should be its own patch
> >>>>>> series and update all packages in once series.
> >>>>>>
> >>>>>> Mike
> >>>>>>
> >>>>>>> -----Original Message-----
> >>>>>>> From: devel@edk2.groups.io <devel@edk2.groups.io> On Behalf Of
> >>>>>>> Rebecca Cran
> >>>>>>> Sent: Thursday, February 9, 2023 7:45 AM
> >>>>>>> To: devel@edk2.groups.io; Kinney, Michael D
> >>>>>>> <michael.d.kinney@intel.com>; Gao, Liming
> >>>>>>> <gaoliming@byosoft.com.cn>;
> >>>>> Liu, Zhiguang
> >>>>>>> <zhiguang.liu@intel.com>
> >>>>>>> Cc: Rebecca Cran <rebecca@quicinc.com>
> >>>>>>> Subject: [edk2-devel] [PATCH 2/2] MdePkg: Update code to be
> >>>>>>> more C11 compliant by using __func__
> >>>>>>>
> >>>>>>> __FUNCTION__ is a pre-standard extension that gcc and Visual
> >>>>>>> C++ among others support, while __func__ was standardized in C99.
> >>>>>>>
> >>>>>>> Since it's more standard, replace __FUNCTION__ with __func__
> >>>>>>> throughout MdePkg.
> >>>>>>>
> >>>>>>> Signed-off-by: Rebecca Cran <rebecca@quicinc.com>
> >>>>>>> ---
> >>>>>>> MdePkg/Include/Library/PerformanceLib.h | 12 ++++++------
> >>>>>>> MdePkg/Include/Library/UnitTestLib.h | 18 +++++++++------
> >>>>> ---
> >>>>>>> MdePkg/Library/BaseCacheMaintenanceLib/LoongArchCache.c | 6 +++---
> >>>>>>> MdePkg/Library/BaseCacheMaintenanceLib/RiscVCache.c | 12 ++++++------
> >>>>>>> MdePkg/Library/BaseLib/SafeString.c | 2 +-
> >>>>>>> MdePkg/Library/BaseOrderedCollectionRedBlackTreeLib/BaseOrderedCollectionRedBlackTreeLib.c | 4 ++--
> >>>>>>> MdePkg/Library/DxeRngLib/DxeRngLib.c | 14 +++++++-------
> >>>>>>> 7 files changed, 34 insertions(+), 34 deletions(-)
> >>>>>>>
> >>>>>>> diff --git a/MdePkg/Include/Library/PerformanceLib.h
> >>>>>>> b/MdePkg/Include/Library/PerformanceLib.h
> >>>>>>> index 34ec956b9c0e..d0f2dfb070d5 100644
> >>>>>>> --- a/MdePkg/Include/Library/PerformanceLib.h
> >>>>>>> +++ b/MdePkg/Include/Library/PerformanceLib.h
> >>>>>>> @@ -526,7 +526,7 @@ LogPerformanceMeasurement (
> >>>>>>> #define PERF_EVENT_SIGNAL_BEGIN(EventGuid) \
> >>>>>>> do { \
> >>>>>>> if (LogPerformanceMeasurementEnabled (PERF_GENERAL_TYPE)) { \
> >>>>>>> - LogPerformanceMeasurement (&gEfiCallerIdGuid, EventGuid, __FUNCTION__ , 0, PERF_EVENTSIGNAL_START_ID); \
> >>>>>>> + LogPerformanceMeasurement (&gEfiCallerIdGuid,
> >>>>>>> + EventGuid, __func__ , 0, PERF_EVENTSIGNAL_START_ID); \
> >>>>>>> } \
> >>>>>>> } while (FALSE)
> >>>>>>>
> >>>>>>> @@ -542,7 +542,7 @@ LogPerformanceMeasurement (
> >>>>>>> #define PERF_EVENT_SIGNAL_END(EventGuid) \
> >>>>>>> do { \
> >>>>>>> if (LogPerformanceMeasurementEnabled (PERF_GENERAL_TYPE)) { \
> >>>>>>> - LogPerformanceMeasurement (&gEfiCallerIdGuid, EventGuid, __FUNCTION__ , 0, PERF_EVENTSIGNAL_END_ID); \
> >>>>>>> + LogPerformanceMeasurement (&gEfiCallerIdGuid,
> >>>>>>> + EventGuid, __func__ , 0, PERF_EVENTSIGNAL_END_ID); \
> >>>>>>> } \
> >>>>>>> } while (FALSE)
> >>>>>>>
> >>>>>>> @@ -558,7 +558,7 @@ LogPerformanceMeasurement (
> >>>>>>> #define PERF_CALLBACK_BEGIN(TriggerGuid) \
> >>>>>>> do { \
> >>>>>>> if (LogPerformanceMeasurementEnabled (PERF_GENERAL_TYPE)) { \
> >>>>>>> - LogPerformanceMeasurement (&gEfiCallerIdGuid, TriggerGuid, __FUNCTION__ , 0, PERF_CALLBACK_START_ID); \
> >>>>>>> + LogPerformanceMeasurement (&gEfiCallerIdGuid,
> >>>>>>> + TriggerGuid, __func__ , 0, PERF_CALLBACK_START_ID); \
> >>>>>>> } \
> >>>>>>> } while (FALSE)
> >>>>>>>
> >>>>>>> @@ -574,7 +574,7 @@ LogPerformanceMeasurement (
> >>>>>>> #define PERF_CALLBACK_END(TriggerGuid) \
> >>>>>>> do { \
> >>>>>>> if (LogPerformanceMeasurementEnabled (PERF_GENERAL_TYPE)) { \
> >>>>>>> - LogPerformanceMeasurement (&gEfiCallerIdGuid, TriggerGuid, __FUNCTION__ , 0, PERF_CALLBACK_END_ID); \
> >>>>>>> + LogPerformanceMeasurement (&gEfiCallerIdGuid,
> >>>>>>> + TriggerGuid, __func__ , 0, PERF_CALLBACK_END_ID); \
> >>>>>>> } \
> >>>>>>> } while (FALSE)
> >>>>>>>
> >>>>>>> @@ -589,7 +589,7 @@ LogPerformanceMeasurement (
> >>>>>>> #define PERF_FUNCTION_BEGIN() \
> >>>>>>> do { \
> >>>>>>> if (LogPerformanceMeasurementEnabled (PERF_GENERAL_TYPE)) { \
> >>>>>>> - LogPerformanceMeasurement (&gEfiCallerIdGuid, NULL, __FUNCTION__ , 0, PERF_FUNCTION_START_ID); \
> >>>>>>> + LogPerformanceMeasurement (&gEfiCallerIdGuid, NULL,
> >>>>>>> + __func__ , 0, PERF_FUNCTION_START_ID); \
> >>>>>>> } \
> >>>>>>> } while (FALSE)
> >>>>>>>
> >>>>>>> @@ -604,7 +604,7 @@ LogPerformanceMeasurement (
> >>>>>>> #define PERF_FUNCTION_END() \
> >>>>>>> do { \
> >>>>>>> if (LogPerformanceMeasurementEnabled (PERF_GENERAL_TYPE)) { \
> >>>>>>> - LogPerformanceMeasurement (&gEfiCallerIdGuid, NULL, __FUNCTION__ , 0, PERF_FUNCTION_END_ID); \
> >>>>>>> + LogPerformanceMeasurement (&gEfiCallerIdGuid, NULL,
> >>>>>>> + __func__ , 0, PERF_FUNCTION_END_ID); \
> >>>>>>> } \
> >>>>>>> } while (FALSE)
> >>>>>>>
> >>>>>>> diff --git a/MdePkg/Include/Library/UnitTestLib.h
> >>>>>>> b/MdePkg/Include/Library/UnitTestLib.h
> >>>>>>> index 71c205b1b143..321a310602d7 100644
> >>>>>>> --- a/MdePkg/Include/Library/UnitTestLib.h
> >>>>>>> +++ b/MdePkg/Include/Library/UnitTestLib.h
> >>>>>>> @@ -348,7 +348,7 @@ SaveFrameworkState (
> >>>>>>> @param[in] Expression Expression to be evaluated for TRUE.
> >>>>>>> **/
> >>>>>>> #define UT_ASSERT_TRUE(Expression) \
> >>>>>>> - if(!UnitTestAssertTrue ((Expression), __FUNCTION__,
> >>>>>>> DEBUG_LINE_NUMBER, __FILE__, #Expression)) { \
> >>>>>>> + if(!UnitTestAssertTrue ((Expression), __func__,
> >>>>>>> + DEBUG_LINE_NUMBER, __FILE__, #Expression)) { \
> >>>>>>> return UNIT_TEST_ERROR_TEST_FAILED; \
> >>>>>>> }
> >>>>>>>
> >>>>>>> @@ -360,7 +360,7 @@ SaveFrameworkState (
> >>>>>>> @param[in] Expression Expression to be evaluated for FALSE.
> >>>>>>> **/
> >>>>>>> #define UT_ASSERT_FALSE(Expression) \
> >>>>>>> - if(!UnitTestAssertFalse ((Expression), __FUNCTION__,
> >>>>>>> DEBUG_LINE_NUMBER, __FILE__, #Expression)) { \
> >>>>>>> + if(!UnitTestAssertFalse ((Expression), __func__,
> >>>>>>> + DEBUG_LINE_NUMBER, __FILE__, #Expression)) { \
> >>>>>>> return UNIT_TEST_ERROR_TEST_FAILED; \
> >>>>>>> }
> >>>>>>>
> >>>>>>> @@ -373,7 +373,7 @@ SaveFrameworkState (
> >>>>>>> @param[in] ValueB Value to be compared for equality (64-bit comparison).
> >>>>>>> **/
> >>>>>>> #define UT_ASSERT_EQUAL(ValueA, ValueB)
> >>>>> \
> >>>>>>> - if(!UnitTestAssertEqual ((UINT64)(ValueA),
> >>>>>>> (UINT64)(ValueB), __FUNCTION__, DEBUG_LINE_NUMBER, __FILE__,
> >>>>> #ValueA, #ValueB)) { \
> >>>>>>> + if(!UnitTestAssertEqual ((UINT64)(ValueA),
> >>>>>>> + (UINT64)(ValueB), __func__, DEBUG_LINE_NUMBER, __FILE__,
> >>>>>>> + #ValueA,
> >>>>> #ValueB)) { \
> >>>>>>> return UNIT_TEST_ERROR_TEST_FAILED;
> >>>>> \
> >>>>>>> }
> >>>>>>>
> >>>>>>> @@ -387,7 +387,7 @@ SaveFrameworkState (
> >>>>>>> @param[in] Length Number of bytes to compare in BufferA and BufferB.
> >>>>>>> **/
> >>>>>>> #define UT_ASSERT_MEM_EQUAL(BufferA, BufferB, Length) \
> >>>>>>> - if(!UnitTestAssertMemEqual ((VOID *)(UINTN)(BufferA), (VOID
> >>>>>>> *)(UINTN)(BufferB), (UINTN)Length, __FUNCTION__,
> >>>>> DEBUG_LINE_NUMBER,
> >>>>>>> __FILE__, #BufferA, #BufferB)) { \
> >>>>>>> + if(!UnitTestAssertMemEqual ((VOID *)(UINTN)(BufferA), (VOID
> >>>>>>> + *)(UINTN)(BufferB), (UINTN)Length, __func__,
> >>>>> DEBUG_LINE_NUMBER,
> >>>>>>> __FILE__, #BufferA, #BufferB)) { \
> >>>>>>> return UNIT_TEST_ERROR_TEST_FAILED; \
> >>>>>>> }
> >>>>>>>
> >>>>>>> @@ -400,7 +400,7 @@ SaveFrameworkState (
> >>>>>>> @param[in] ValueB Value to be compared for inequality (64-bit comparison).
> >>>>>>> **/
> >>>>>>> #define UT_ASSERT_NOT_EQUAL(ValueA, ValueB)
> >>>>> \
> >>>>>>> - if(!UnitTestAssertNotEqual ((UINT64)(ValueA),
> >>>>>>> (UINT64)(ValueB), __FUNCTION__, DEBUG_LINE_NUMBER, __FILE__,
> >>>>> #ValueA, #ValueB)) { \
> >>>>>>> + if(!UnitTestAssertNotEqual ((UINT64)(ValueA),
> >>>>>>> + (UINT64)(ValueB), __func__, DEBUG_LINE_NUMBER, __FILE__,
> >>>>> #ValueA, #ValueB)) { \
> >>>>>>> return UNIT_TEST_ERROR_TEST_FAILED;
> >>>>> \
> >>>>>>> }
> >>>>>>>
> >>>>>>> @@ -412,7 +412,7 @@ SaveFrameworkState (
> >>>>>>> @param[in] Status EFI_STATUS value to check.
> >>>>>>> **/
> >>>>>>> #define UT_ASSERT_NOT_EFI_ERROR(Status) \
> >>>>>>> - if(!UnitTestAssertNotEfiError ((Status), __FUNCTION__,
> >>>>>>> DEBUG_LINE_NUMBER, __FILE__, #Status)) { \
> >>>>>>> + if(!UnitTestAssertNotEfiError ((Status), __func__,
> >>>>>>> + DEBUG_LINE_NUMBER, __FILE__, #Status)) { \
> >>>>>>> return UNIT_TEST_ERROR_TEST_FAILED; \
> >>>>>>> }
> >>>>>>>
> >>>>>>> @@ -425,7 +425,7 @@ SaveFrameworkState (
> >>>>>>> @param[in] Expected EFI_STATUS values to compare for equality.
> >>>>>>> **/
> >>>>>>> #define UT_ASSERT_STATUS_EQUAL(Status, Expected) \
> >>>>>>> - if(!UnitTestAssertStatusEqual ((Status), (Expected),
> >>>>>>> __FUNCTION__, DEBUG_LINE_NUMBER, __FILE__, #Status)) { \
> >>>>>>> + if(!UnitTestAssertStatusEqual ((Status), (Expected),
> >>>>>>> + __func__, DEBUG_LINE_NUMBER, __FILE__, #Status)) { \
> >>>>>>> return UNIT_TEST_ERROR_TEST_FAILED; \
> >>>>>>> }
> >>>>>>>
> >>>>>>> @@ -437,7 +437,7 @@ SaveFrameworkState (
> >>>>>>> @param[in] Pointer Pointer to be checked against NULL.
> >>>>>>> **/
> >>>>>>> #define UT_ASSERT_NOT_NULL(Pointer) \
> >>>>>>> - if(!UnitTestAssertNotNull ((Pointer), __FUNCTION__,
> >>>>>>> DEBUG_LINE_NUMBER, __FILE__, #Pointer)) { \
> >>>>>>> + if(!UnitTestAssertNotNull ((Pointer), __func__,
> >>>>>>> + DEBUG_LINE_NUMBER, __FILE__, #Pointer)) { \
> >>>>>>> return UNIT_TEST_ERROR_TEST_FAILED; \
> >>>>>>> }
> >>>>>>>
> >>>>>>> @@ -482,7 +482,7 @@ extern BASE_LIBRARY_JUMP_BUFFER *gUnitTestExpectAssertFailureJumpBuffer;
> >>>>>>> } \
> >>>>>>> if (!UnitTestExpectAssertFailure ( \
> >>>>>>> UnitTestJumpStatus, \
> >>>>>>> - __FUNCTION__, DEBUG_LINE_NUMBER, __FILE__, \
> >>>>>>> + __func__, DEBUG_LINE_NUMBER, __FILE__, \
> >>>>>>> #FunctionCall, Status)) { \
> >>>>>>> return UNIT_TEST_ERROR_TEST_FAILED; \
> >>>>>>> } \
> >>>>>>> diff --git
> >>>>>>> a/MdePkg/Library/BaseCacheMaintenanceLib/LoongArchCache.c
> >>>>> b/MdePkg/Library/BaseCacheMaintenanceLib/LoongArchCache.c
> >>>>>>> index 4c8773278c3c..617b0f4218b8 100644
> >>>>>>> --- a/MdePkg/Library/BaseCacheMaintenanceLib/LoongArchCache.c
> >>>>>>> +++ b/MdePkg/Library/BaseCacheMaintenanceLib/LoongArchCache.c
> >>>>>>> @@ -100,7 +100,7 @@ WriteBackInvalidateDataCache (
> >>>>>>> VOID
> >>>>>>> )
> >>>>>>> {
> >>>>>>> - DEBUG ((DEBUG_ERROR, "%a: Not currently implemented on
> >>>>>>> LoongArch.\n", __FUNCTION__));
> >>>>>>> + DEBUG ((DEBUG_ERROR, "%a: Not currently implemented on
> >>>>>>> + LoongArch.\n", __func__));
> >>>>>>> }
> >>>>>>>
> >>>>>>> /**
> >>>>>>> @@ -136,7 +136,7 @@ WriteBackInvalidateDataCacheRange (
> >>>>>>> IN UINTN Length
> >>>>>>> )
> >>>>>>> {
> >>>>>>> - DEBUG ((DEBUG_ERROR, "%a: Not currently implemented on
> >>>>>>> LoongArch.\n", __FUNCTION__));
> >>>>>>> + DEBUG ((DEBUG_ERROR, "%a: Not currently implemented on
> >>>>>>> + LoongArch.\n", __func__));
> >>>>>>> return Address;
> >>>>>>> }
> >>>>>>>
> >>>>>>> @@ -191,7 +191,7 @@ WriteBackDataCacheRange (
> >>>>>>> IN UINTN Length
> >>>>>>> )
> >>>>>>> {
> >>>>>>> - DEBUG ((DEBUG_ERROR, "%a: Not currently implemented on
> >>>>>>> LoongArch.\n", __FUNCTION__));
> >>>>>>> + DEBUG ((DEBUG_ERROR, "%a: Not currently implemented on
> >>>>>>> + LoongArch.\n", __func__));
> >>>>>>> return Address;
> >>>>>>> }
> >>>>>>>
> >>>>>>> diff --git
> >>>>>>> a/MdePkg/Library/BaseCacheMaintenanceLib/RiscVCache.c
> >>>>> b/MdePkg/Library/BaseCacheMaintenanceLib/RiscVCache.c
> >>>>>>> index 67a3387ff3c6..bb26fe013d8b 100644
> >>>>>>> --- a/MdePkg/Library/BaseCacheMaintenanceLib/RiscVCache.c
> >>>>>>> +++ b/MdePkg/Library/BaseCacheMaintenanceLib/RiscVCache.c
> >>>>>>> @@ -76,7 +76,7 @@ InvalidateInstructionCacheRange (
> >>>>>>> IN UINTN Length
> >>>>>>> )
> >>>>>>> {
> >>>>>>> - DEBUG ((DEBUG_ERROR, "%a:RISC-V unsupported function.\n",
> >>>>>>> __FUNCTION__));
> >>>>>>> + DEBUG ((DEBUG_ERROR, "%a:RISC-V unsupported function.\n",
> >>>>>>> + __func__));
> >>>>>>> return Address;
> >>>>>>> }
> >>>>>>>
> >>>>>>> @@ -96,7 +96,7 @@ WriteBackInvalidateDataCache (
> >>>>>>> VOID
> >>>>>>> )
> >>>>>>> {
> >>>>>>> - DEBUG ((DEBUG_ERROR, "%a:RISC-V unsupported function.\n",
> >>>>>>> __FUNCTION__));
> >>>>>>> + DEBUG ((DEBUG_ERROR, "%a:RISC-V unsupported function.\n",
> >>>>>>> + __func__));
> >>>>>>> }
> >>>>>>>
> >>>>>>> /**
> >>>>>>> @@ -132,7 +132,7 @@ WriteBackInvalidateDataCacheRange (
> >>>>>>> IN UINTN Length
> >>>>>>> )
> >>>>>>> {
> >>>>>>> - DEBUG ((DEBUG_ERROR, "%a:RISC-V unsupported function.\n",
> >>>>>>> __FUNCTION__));
> >>>>>>> + DEBUG ((DEBUG_ERROR, "%a:RISC-V unsupported function.\n",
> >>>>>>> + __func__));
> >>>>>>> return Address;
> >>>>>>> }
> >>>>>>>
> >>>>>>> @@ -152,7 +152,7 @@ WriteBackDataCache (
> >>>>>>> VOID
> >>>>>>> )
> >>>>>>> {
> >>>>>>> - DEBUG ((DEBUG_ERROR, "%a:RISC-V unsupported function.\n",
> >>>>>>> __FUNCTION__));
> >>>>>>> + DEBUG ((DEBUG_ERROR, "%a:RISC-V unsupported function.\n",
> >>>>>>> + __func__));
> >>>>>>> }
> >>>>>>>
> >>>>>>> /**
> >>>>>>> @@ -187,7 +187,7 @@ WriteBackDataCacheRange (
> >>>>>>> IN UINTN Length
> >>>>>>> )
> >>>>>>> {
> >>>>>>> - DEBUG ((DEBUG_ERROR, "%a:RISC-V unsupported function.\n",
> >>>>>>> __FUNCTION__));
> >>>>>>> + DEBUG ((DEBUG_ERROR, "%a:RISC-V unsupported function.\n",
> >>>>>>> + __func__));
> >>>>>>> return Address;
> >>>>>>> }
> >>>>>>>
> >>>>>>> @@ -245,6 +245,6 @@ InvalidateDataCacheRange (
> >>>>>>> IN UINTN Length
> >>>>>>> )
> >>>>>>> {
> >>>>>>> - DEBUG ((DEBUG_ERROR, "%a:RISC-V unsupported function.\n",
> >>>>>>> __FUNCTION__));
> >>>>>>> + DEBUG ((DEBUG_ERROR, "%a:RISC-V unsupported function.\n",
> >>>>>>> + __func__));
> >>>>>>> return Address;
> >>>>>>> }
> >>>>>>> diff --git a/MdePkg/Library/BaseLib/SafeString.c
> >>>>>>> b/MdePkg/Library/BaseLib/SafeString.c
> >>>>>>> index b75b33381732..954d3f8c8988 100644
> >>>>>>> --- a/MdePkg/Library/BaseLib/SafeString.c
> >>>>>>> +++ b/MdePkg/Library/BaseLib/SafeString.c
> >>>>>>> @@ -17,7 +17,7 @@
> >>>>>>> if (!(Expression)) { \
> >>>>>>> DEBUG ((DEBUG_VERBOSE, \
> >>>>>>> "%a(%d) %a: SAFE_STRING_CONSTRAINT_CHECK(%a) failed. Return %r\n", \
> >>>>>>> - __FILE__, DEBUG_LINE_NUMBER, __FUNCTION__, DEBUG_EXPRESSION_STRING (Expression), Status)); \
> >>>>>>> + __FILE__, DEBUG_LINE_NUMBER, __func__,
> >>>>>>> + DEBUG_EXPRESSION_STRING (Expression), Status)); \
> >>>>>>> return Status; \
> >>>>>>> } \
> >>>>>>> } while (FALSE)
> >>>>>>> diff --git
> >>>>>>> a/MdePkg/Library/BaseOrderedCollectionRedBlackTreeLib/BaseOrde
> >>>>>>> redCollectionRedBlackTreeLib.c
> >>>>>>> b/MdePkg/Library/BaseOrderedCollectionRedBlackTreeLib/BaseOrde
> >>>>>>> redCollectionRedBlackTreeLib.c index
> >>>>>>> f47301de8982..a23113f9c91d 100644
> >>>>>>> ---
> >>>>>>> a/MdePkg/Library/BaseOrderedCollectionRedBlackTreeLib/BaseOrde
> >>>>>>> redCollectionRedBlackTreeLib.c
> >>>>>>> +++ b/MdePkg/Library/BaseOrderedCollectionRedBlackTreeLib/Base
> >>>>>>> +++ OrderedCollectionRedBlackTreeLib.c
> >>>>>>> @@ -1416,7 +1416,7 @@ RedBlackTreeValidate (
> >>>>>>> CONST RED_BLACK_TREE_NODE *Last;
> >>>>>>> CONST RED_BLACK_TREE_NODE *Node;
> >>>>>>>
> >>>>>>> - DEBUG ((DEBUG_VERBOSE, "%a: Tree=%p\n", __FUNCTION__,
> >>>>>>> Tree));
> >>>>>>> + DEBUG ((DEBUG_VERBOSE, "%a: Tree=%p\n", __func__, Tree));
> >>>>>>>
> >>>>>>> //
> >>>>>>> // property #5
> >>>>>>> @@ -1459,7 +1459,7 @@ RedBlackTreeValidate (
> >>>>>>> DEBUG ((
> >>>>>>> DEBUG_VERBOSE,
> >>>>>>> "%a: Tree=%p BlackHeight=%Ld Count=%Ld\n",
> >>>>>>> - __FUNCTION__,
> >>>>>>> + __func__,
> >>>>>>> Tree,
> >>>>>>> (INT64)BlackHeight,
> >>>>>>> (INT64)ForwardCount
> >>>>>>> diff --git a/MdePkg/Library/DxeRngLib/DxeRngLib.c
> >>>>>>> b/MdePkg/Library/DxeRngLib/DxeRngLib.c
> >>>>>>> index 82129aa44598..46aea515924f 100644
> >>>>>>> --- a/MdePkg/Library/DxeRngLib/DxeRngLib.c
> >>>>>>> +++ b/MdePkg/Library/DxeRngLib/DxeRngLib.c
> >>>>>>> @@ -37,43 +37,43 @@ GenerateRandomNumberViaNist800Algorithm (
> >>>>>>> RngProtocol = NULL;
> >>>>>>>
> >>>>>>> if (Buffer == NULL) {
> >>>>>>> - DEBUG ((DEBUG_ERROR, "%a: Buffer == NULL.\n", __FUNCTION__));
> >>>>>>> + DEBUG ((DEBUG_ERROR, "%a: Buffer == NULL.\n", __func__));
> >>>>>>> return EFI_INVALID_PARAMETER;
> >>>>>>> }
> >>>>>>>
> >>>>>>> Status = gBS->LocateProtocol (&gEfiRngProtocolGuid, NULL, (VOID **)&RngProtocol);
> >>>>>>> if (EFI_ERROR (Status) || (RngProtocol == NULL)) {
> >>>>>>> - DEBUG ((DEBUG_ERROR, "%a: Could not locate RNG prototocol, Status = %r\n", __FUNCTION__, Status));
> >>>>>>> + DEBUG ((DEBUG_ERROR, "%a: Could not locate RNG
> >>>>>>> + prototocol, Status = %r\n", __func__, Status));
> >>>>>>> return Status;
> >>>>>>> }
> >>>>>>>
> >>>>>>> Status = RngProtocol->GetRNG (RngProtocol,
> >>>>>>> &gEfiRngAlgorithmSp80090Ctr256Guid, BufferSize, Buffer);
> >>>>>>> - DEBUG ((DEBUG_INFO, "%a: GetRNG algorithm CTR-256 - Status
> >>>>>>> = %r\n", __FUNCTION__, Status));
> >>>>>>> + DEBUG ((DEBUG_INFO, "%a: GetRNG algorithm CTR-256 - Status
> >>>>>>> + = %r\n", __func__, Status));
> >>>>>>> if (!EFI_ERROR (Status)) {
> >>>>>>> return Status;
> >>>>>>> }
> >>>>>>>
> >>>>>>> Status = RngProtocol->GetRNG (RngProtocol,
> >>>>>>> &gEfiRngAlgorithmSp80090Hmac256Guid, BufferSize, Buffer);
> >>>>>>> - DEBUG ((DEBUG_INFO, "%a: GetRNG algorithm HMAC-256 - Status
> >>>>>>> = %r\n", __FUNCTION__, Status));
> >>>>>>> + DEBUG ((DEBUG_INFO, "%a: GetRNG algorithm HMAC-256 - Status
> >>>>>>> + = %r\n", __func__, Status));
> >>>>>>> if (!EFI_ERROR (Status)) {
> >>>>>>> return Status;
> >>>>>>> }
> >>>>>>>
> >>>>>>> Status = RngProtocol->GetRNG (RngProtocol,
> >>>>>>> &gEfiRngAlgorithmSp80090Hash256Guid, BufferSize, Buffer);
> >>>>>>> - DEBUG ((DEBUG_INFO, "%a: GetRNG algorithm Hash-256 - Status
> >>>>>>> = %r\n", __FUNCTION__, Status));
> >>>>>>> + DEBUG ((DEBUG_INFO, "%a: GetRNG algorithm Hash-256 - Status
> >>>>>>> + = %r\n", __func__, Status));
> >>>>>>> if (!EFI_ERROR (Status)) {
> >>>>>>> return Status;
> >>>>>>> }
> >>>>>>>
> >>>>>>> // If all the other methods have failed, use the default method from the RngProtocol
> >>>>>>> Status = RngProtocol->GetRNG (RngProtocol, NULL,
> >>>>>>> BufferSize, Buffer);
> >>>>>>> - DEBUG ((DEBUG_INFO, "%a: GetRNG algorithm Hash-256 - Status
> >>>>>>> = %r\n", __FUNCTION__, Status));
> >>>>>>> + DEBUG ((DEBUG_INFO, "%a: GetRNG algorithm Hash-256 - Status
> >>>>>>> + = %r\n", __func__, Status));
> >>>>>>> if (!EFI_ERROR (Status)) {
> >>>>>>> return Status;
> >>>>>>> }
> >>>>>>>
> >>>>>>> // If we get to this point, we have failed
> >>>>>>> - DEBUG ((DEBUG_ERROR, "%a: GetRNG() failed, staus = %r\n",
> >>>>>>> __FUNCTION__, Status));
> >>>>>>> + DEBUG ((DEBUG_ERROR, "%a: GetRNG() failed, staus = %r\n",
> >>>>>>> + __func__, Status));
> >>>>>>>
> >>>>>>> return Status;
> >>>>>>> }// GenerateRandomNumberViaNist800Algorithm()
> >>>>>>> --
> >>>>>>> 2.30.2
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>>
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>
> >>>>>
> >>>
> >>>
> >>>
>
>
>
>
next prev parent reply other threads:[~2023-03-23 1:43 UTC|newest]
Thread overview: 26+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-02-09 15:45 [PATCH 1/2] MdePkg: Update Base.h to be compliant with C11 Rebecca Cran
2023-02-09 15:45 ` [PATCH 2/2] MdePkg: Update code to be more C11 compliant by using __func__ Rebecca Cran
2023-02-10 1:01 ` [edk2-devel] " Michael D Kinney
2023-02-10 1:21 ` Rebecca Cran
2023-02-10 11:45 ` Ard Biesheuvel
2023-02-10 15:19 ` Leif Lindholm
2023-02-10 18:16 ` Michael D Kinney
2023-02-12 19:59 ` Rebecca Cran
2023-03-14 2:19 ` Rebecca Cran
2023-03-14 20:40 ` Michael D Kinney
2023-03-17 13:31 ` Rebecca Cran
2023-03-17 15:16 ` Michael D Kinney
2023-03-22 16:58 ` Michael D Kinney
2023-03-22 17:45 ` Rebecca Cran
2023-03-23 0:58 ` Michael D Kinney
2023-03-23 1:43 ` Huang, Yanbo [this message]
2023-03-23 1:46 ` Rebecca Cran
2023-03-17 4:23 ` Sunil V L
2023-02-10 1:03 ` [edk2-devel] [PATCH 1/2] MdePkg: Update Base.h to be compliant with C11 Michael D Kinney
2023-02-10 1:14 ` Rebecca Cran
2023-02-10 4:15 ` Rebecca Cran
2023-03-06 16:39 ` Rebecca Cran
2023-03-10 2:45 ` 回复: " gaoliming
2023-03-10 17:58 ` Rebecca Cran
2023-03-13 17:54 ` Rebecca Cran
2023-03-13 20:46 ` Michael D Kinney
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-list from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=IA1PR11MB6170EF82479927FD6E25DDB3EF879@IA1PR11MB6170.namprd11.prod.outlook.com \
--to=devel@edk2.groups.io \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox