On Sat, May 30, 2026 at 2:50 PM Ahmad Khalifa <[email protected]> wrote:
>
> On Sat May 30, 2026 at 8:09 PM +0300, A FreeBSD User wrote:
> > Am Tage des Herren Sat, 30 May 2026 02:45:12 +0000
> > Ahmad Khalifa <[email protected]> schrieb:
> >
> >> The branch main has been updated by vexeduxr:
> >>
> >> URL: 
> >> https://cgit.FreeBSD.org/src/commit/?id=2fa4bdd7f9e99698a6652db405c3165fdcd41c1d
> >>
> >> commit 2fa4bdd7f9e99698a6652db405c3165fdcd41c1d
> >> Author:     Ahmad Khalifa <[email protected]>
> >> AuthorDate: 2026-05-30 02:40:58 +0000
> >> Commit:     Ahmad Khalifa <[email protected]>
> >> CommitDate: 2026-05-30 02:40:58 +0000
> >>
> >>     edk2: enable static asserts for *INT64 alignment
> >>
> >>     The ia32 loader is now built with -malign-double, so these should pass.
> >>
> >>     Differential Revision:  https://reviews.freebsd.org/D55386
> >> ---
> >>  sys/contrib/edk2/Include/Base.h | 2 --
> >>  1 file changed, 2 deletions(-)
> >>
> >> diff --git a/sys/contrib/edk2/Include/Base.h 
> >> b/sys/contrib/edk2/Include/Base.h
> >> index 3ae798db8429..d3342c9a6ca2 100644
> >> --- a/sys/contrib/edk2/Include/Base.h
> >> +++ b/sys/contrib/edk2/Include/Base.h
> >> @@ -841,10 +841,8 @@ STATIC_ASSERT (ALIGNOF (INT16)   == sizeof (INT16), 
> >> "Alignment of INT16
> >> does not STATIC_ASSERT (ALIGNOF (UINT16)  == sizeof (UINT16), "Alignment 
> >> of UINT16 does not
> >> meet UEFI Specification Data Type requirements"); STATIC_ASSERT (ALIGNOF 
> >> (INT32)   == sizeof
> >> (INT32), "Alignment of INT32 does not meet UEFI Specification Data Type 
> >> requirements");
> >> STATIC_ASSERT (ALIGNOF (UINT32)  == sizeof (UINT32), "Alignment of UINT32 
> >> does not meet UEFI
> >> Specification Data Type requirements"); -#ifndef _STANDALONE STATIC_ASSERT 
> >> (ALIGNOF (INT64)
> >>  == sizeof (INT64), "Alignment of INT64 does not meet UEFI Specification 
> >> Data Type
> >> requirements"); STATIC_ASSERT (ALIGNOF (UINT64)  == sizeof (UINT64), 
> >> "Alignment of UINT64
> >> does not meet UEFI Specification Data Type requirements"); -#endif 
> >> STATIC_ASSERT (ALIGNOF
> >> (CHAR8)   == sizeof (CHAR8), "Alignment of CHAR8 does not meet UEFI 
> >> Specification Data Type
> >> requirements"); STATIC_ASSERT (ALIGNOF (CHAR16)  == sizeof (CHAR16), 
> >> "Alignment of CHAR16
> >> does not meet UEFI Specification Data Type requirements"); STATIC_ASSERT 
> >> (ALIGNOF (INTN)
> >> == sizeof (INTN), "Alignment of INTN does not meet UEFI Specification Data 
> >> Type
> >> requirements");
> >>
> >
> > The commit seems to disturb building process and gets rogue with:
> > [...]
> > In file included from 
> > /usr/src/sys/contrib/edk2/Include/Uefi/UefiBaseType.h:16:
> > /usr/src/sys/contrib/edk2/Include/Base.h:844:16: error: static assertion 
> > failed due to
> > requirement '_Alignof(long long) == sizeof(long long)': Alignment of INT64 
> > does not meet UEFI
> > Specification Data Type requirements 844 | STATIC_ASSERT (ALIGNOF (INT64)   
> > == sizeof (INT64),
> > "Alignment of INT64 does not meet UEFI Specification Data Type 
> > requirements"); |
> >  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 
> > /usr/src/sys/contrib/edk2/Include/Base.h:778:24: note:
> > expanded from macro 'ALIGNOF'
>
> I can't reproduce with the defaults, do you have any loader related
> build options changed?

Maybe a transient stale rebuild artifact, I was able to get through it
with -j1 somehow.

> Also, can you tell which target this failed on?
>
> Thanks.
>
> >
> >
> > Regards
> > oh
>

Reply via email to