<feed xmlns='http://www.w3.org/2005/Atom'>
<title>Tianocore/edk2.git/MdePkg/Include/Base.h, branch dependabot/github_actions/github/codeql-action-4</title>
<subtitle>EDK II (mirror)</subtitle>
<id>https://git.radix-linux.su/Tianocore/edk2.git/atom?h=dependabot%2Fgithub_actions%2Fgithub%2Fcodeql-action-4</id>
<link rel='self' href='https://git.radix-linux.su/Tianocore/edk2.git/atom?h=dependabot%2Fgithub_actions%2Fgithub%2Fcodeql-action-4'/>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/Tianocore/edk2.git/'/>
<updated>2025-09-25T22:04:10+00:00</updated>
<entry>
<title>MdePkg: Remove ARM32 Support from BaseLib</title>
<updated>2025-09-25T22:04:10+00:00</updated>
<author>
<name>Oliver Smith-Denny</name>
<email>osde@microsoft.com</email>
</author>
<published>2025-09-15T21:08:25+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/Tianocore/edk2.git/commit/?id=49b3eb5907f1a1c17b202cb2195da6fff59ca7dc'/>
<id>urn:sha1:49b3eb5907f1a1c17b202cb2195da6fff59ca7dc</id>
<content type='text'>
edk2 is dropping support for the ARM32 architecture. This
commit removes ARM32 code from BaseLib.

Signed-off-by: Oliver Smith-Denny &lt;osde@microsoft.com&gt;
</content>
</entry>
<entry>
<title>MdePkg/Base: Don't error out on missing compiler CPP macros</title>
<updated>2025-01-17T16:39:29+00:00</updated>
<author>
<name>Ard Biesheuvel</name>
<email>ardb@kernel.org</email>
</author>
<published>2025-01-17T11:58:42+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/Tianocore/edk2.git/commit/?id=ea2f6c68ee92677787604cf0a9f412edbc2e599f'/>
<id>urn:sha1:ea2f6c68ee92677787604cf0a9f412edbc2e599f</id>
<content type='text'>
STATIC_ASSERT is #define'd to a compiler specific value, based on
built-in macros exposed by those compilers. If none of those are found,
an #error is raised.

This breaks the DTCPP build rule, which relies on the C preprocessor
for header file inclusion and value substitution, but doesn't define any
of the compiler macros we look for.

So drop the error case. If STATIC_ASSERT is used without a definition,
an error will be raised anyway.

Signed-off-by: Ard Biesheuvel &lt;ardb@kernel.org&gt;
</content>
</entry>
<entry>
<title>MdePkg/Include: Use _Static_assert for clang and GNUC</title>
<updated>2025-01-16T05:33:13+00:00</updated>
<author>
<name>Michael D Kinney</name>
<email>michael.d.kinney@intel.com</email>
</author>
<published>2025-01-06T20:42:07+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/Tianocore/edk2.git/commit/?id=8b2256fbf22c07c7f3505a374458ab53c3fcfff3'/>
<id>urn:sha1:8b2256fbf22c07c7f3505a374458ab53c3fcfff3</id>
<content type='text'>
The clang compiler generates the following error

error: use of 'static_assert' without inclusion of &lt;assert.h&gt;

This is due to the use of the MSC Extension static_assert.
Use _Static_assert instead for clang and GNUC compilers.

Signed-off-by: Michael D Kinney &lt;michael.d.kinney@intel.com&gt;
</content>
</entry>
<entry>
<title>MdePkg: Update BASE_CR macro in Base.h for a Coverity error</title>
<updated>2025-01-07T01:28:02+00:00</updated>
<author>
<name>Phil Noh</name>
<email>Phil.Noh@amd.com</email>
</author>
<published>2024-12-20T19:56:11+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/Tianocore/edk2.git/commit/?id=7e03c40659fab2a96a8a4bb781101a945d3f857b'/>
<id>urn:sha1:7e03c40659fab2a96a8a4bb781101a945d3f857b</id>
<content type='text'>
Coverity is a static analysis tool. It detects the macro as an error
(case to incompatible type, cert_exp39_c_violation). The update resolves
the error and supports compliance with the static analysis tool.

Signed-off-by: Phil Noh &lt;Phil.Noh@amd.com&gt;
</content>
</entry>
<entry>
<title>MdePkg:Update Return Error Macro in Base.h</title>
<updated>2024-09-03T18:42:10+00:00</updated>
<author>
<name>Parth</name>
<email>56894451+parthishere@users.noreply.github.com</email>
</author>
<published>2024-08-06T16:49:09+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/Tianocore/edk2.git/commit/?id=1a89d9887ff41e804610c5687e646fe30af2d7b2'/>
<id>urn:sha1:1a89d9887ff41e804610c5687e646fe30af2d7b2</id>
<content type='text'>
Fixing RETURN_ERROR macro.
It is causing problem in Coverity Static analysis tool as we are directly converting the UINT value to INTN

Changing value from UINT to INTN might cause problem. Here we know that the values would not be in loss of data.
To increase the code quality and increase the static tool analysis score we have to change it

Cc: Jiangang He &lt;jiangang.he@amd.com&gt;
Cc: Neo Hsueh &lt;Hong-Chih.Hsueh@amd.com&gt;
Signed-off-by: Parth Thakkar &lt;ParthRajeshkumar.Thakkar@amd.com&gt;
</content>
</entry>
<entry>
<title>MdePkg: Check if compiler has __has_builtin before trying to use it</title>
<updated>2024-06-20T01:55:03+00:00</updated>
<author>
<name>Rebecca Cran</name>
<email>rebecca@bsdio.com</email>
</author>
<published>2024-06-16T08:55:33+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/Tianocore/edk2.git/commit/?id=57a890fd03356350a1b7a2a0064c8118f44e9958'/>
<id>urn:sha1:57a890fd03356350a1b7a2a0064c8118f44e9958</id>
<content type='text'>
When building AArch64 code, cpp gets run with the `-undef` flag which on
Fedora 40 with gcc version 14.1.1 20240607 (Red Hat 14.1.1-5) causes
__has_builtin to be undefined. When running the check for
__builtin_unreachable in Base.h it causes an error
"missing binary operator before token "("".

Check that we have __has_builtin before trying to use it.

Signed-off-by: Rebecca Cran &lt;rebecca@bsdio.com&gt;
</content>
</entry>
<entry>
<title>MdePkg: Add missing status codes</title>
<updated>2023-08-07T22:56:02+00:00</updated>
<author>
<name>Nate DeSimone</name>
<email>nathaniel.l.desimone@intel.com</email>
</author>
<published>2023-07-28T22:52:17+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/Tianocore/edk2.git/commit/?id=107ddf1de99dc42eec201eccd97c51ea27dbfcfb'/>
<id>urn:sha1:107ddf1de99dc42eec201eccd97c51ea27dbfcfb</id>
<content type='text'>
REF: https://uefi.org/specs/UEFI/2.10/Apx_D_Status_Codes.html

Upon review it has been found that MdePkg is missing two
status code definitions:

 1. EFI_IP_ADDRESS_CONFLICT - Added in UEFI Spec v2.5
 2. EFI_WARN_RESET_REQUIRED - Added in UEFI Spec v2.6

These missing status codes have been added.

Reviewed-by: Michael D Kinney &lt;michael.d.kinney@intel.com&gt;
Cc: Liming Gao &lt;gaoliming@byosoft.com.cn&gt;
Cc: Zhiguang Liu &lt;zhiguang.liu@intel.com&gt;
Signed-off-by: Nate DeSimone &lt;nathaniel.l.desimone@intel.com&gt;
</content>
</entry>
<entry>
<title>MdePkg/Base.h: Introduce various alignment-related macros</title>
<updated>2023-04-01T23:11:44+00:00</updated>
<author>
<name>Marvin Häuser</name>
<email>mhaeuser@posteo.de</email>
</author>
<published>2023-03-22T07:02:40+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/Tianocore/edk2.git/commit/?id=836042ffd8f1b423d76d01dbdb19982ee5339205'/>
<id>urn:sha1:836042ffd8f1b423d76d01dbdb19982ee5339205</id>
<content type='text'>
ALIGNOF: Determining the alignment requirement of data types is
crucial to ensure safe memory accesses when parsing untrusted data.

IS_POW2: Determining whether a value is a power of two is important
to verify whether untrusted values are valid alignment values.

IS_ALIGNED: In combination with ALIGNOF data offsets can be verified.
A more general version of the IS_ALIGNED macro previously defined by
several modules.

ADDRESS_IS_ALIGNED: Variant of IS_ALIGNED for pointers and addresses.
Replaces module-specific definitions throughout the code base.

ALIGN_VALUE_ADDEND: The addend to align up can be used to directly
determine the required offset for data alignment.

Cc: Michael D Kinney &lt;michael.d.kinney@intel.com&gt;
Cc: Liming Gao &lt;gaoliming@byosoft.com.cn&gt;
Cc: Zhiguang Liu &lt;zhiguang.liu@intel.com&gt;
Cc: Vitaly Cheptsov &lt;vit9696@protonmail.com&gt;
Signed-off-by: Marvin Häuser &lt;mhaeuser@posteo.de&gt;
Signed-off-by: Gerd Hoffmann &lt;kraxel@redhat.com&gt;
Reviewed-by: Michael D Kinney &lt;michael.d.kinney@intel.com&gt;
</content>
</entry>
<entry>
<title>MdePkg: Update Base.h to be compliant with C11</title>
<updated>2023-03-17T17:55:48+00:00</updated>
<author>
<name>Rebecca Cran</name>
<email>rebecca@quicinc.com</email>
</author>
<published>2023-02-09T14:24:16+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/Tianocore/edk2.git/commit/?id=d6107c593bd0a6e9659b5290d245e22614232b4a'/>
<id>urn:sha1:d6107c593bd0a6e9659b5290d245e22614232b4a</id>
<content type='text'>
With the introduction of the use of _Static_assert, edk2 requires a C11
compatible compiler. Update Include/Base.h to be compliant with C11.

As of C11, the maximum type of an enum is type `int`. Since the UEFI
Specification 2.3.1 Errata C allows either `int` or `unsigned int`, fix
the 32-bit enum check to use a signed int.

Since the UEFI 2.3 Specification only allowed signed int, update the
comment to reference 2.3.1 Errata C where the change was made to allow
unsigned int.

Signed-off-by: Rebecca Cran &lt;rebecca@quicinc.com&gt;
Reviewed-by: Michael D Kinney &lt;michael.d.kinney@intel.com&gt;
</content>
</entry>
<entry>
<title>MdePkg/Include: Update Base.h to improve C++ compatibility</title>
<updated>2022-11-11T05:46:51+00:00</updated>
<author>
<name>Michael D Kinney</name>
<email>michael.d.kinney@intel.com</email>
</author>
<published>2022-06-21T19:30:07+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/Tianocore/edk2.git/commit/?id=933b4c333c8f9a78280def62bab55eee5a6b2456'/>
<id>urn:sha1:933b4c333c8f9a78280def62bab55eee5a6b2456</id>
<content type='text'>
REF: https://bugzilla.tianocore.org/show_bug.cgi?id=4134

* Map NULL to nullptr or __null when c++ compiler is used.
* Map STATIC_ASSERT to static_assert when a c++ compiler is used.
* Typecast RETURN_SUCCESS to type RETURN_STATUS to match type used
  by all return error/warning status codes.  C++ has stricter type
  checking and found this inconsistency.

Cc: Liming Gao &lt;gaoliming@byosoft.com.cn&gt;
Cc: Zhiguang Liu &lt;zhiguang.liu@intel.com&gt;
Signed-off-by: Michael D Kinney &lt;michael.d.kinney@intel.com&gt;
Reviewed-by: Liming Gao &lt;gaoliming@byosoft.com.cn&gt;
</content>
</entry>
</feed>
