Mike:
  I find GCC and CLANG will report the error for the empty struct. 

d:\allpkg\edk2-platforms\Silicon\Intel\IntelSiliconPkg\Include\Guid/MicrocodeShadowInfoHob.h:61:11:
 error: flexible array member 'MicrocodeAddressInFlash' not allowed in 
otherwise empty struct
  UINT64  MicrocodeAddressInFlash[];
          ^
1 error generated.

Thanks
Liming
> -----Original Message-----
> From: Kinney, Michael D <michael.d.kin...@intel.com>
> Sent: Thursday, February 27, 2020 1:25 PM
> To: devel@edk2.groups.io; Fu, Siyuan <siyuan...@intel.com>; Kinney, Michael D 
> <michael.d.kin...@intel.com>
> Cc: Ni, Ray <ray...@intel.com>; Chaganty, Rangasai V 
> <rangasai.v.chaga...@intel.com>; Gao, Liming <liming....@intel.com>
> Subject: RE: [edk2-devel] [Patch] IntelSiliconPkg/ShadowMicrocodePei: Fix GCC 
> build error.
> 
> What compiler does not like the flexible array
> member syntax [].
> 
> Mike
> 
> > -----Original Message-----
> > From: devel@edk2.groups.io <devel@edk2.groups.io> On
> > Behalf Of Siyuan, Fu
> > Sent: Wednesday, February 26, 2020 5:58 PM
> > To: devel@edk2.groups.io
> > Cc: Ni, Ray <ray...@intel.com>; Chaganty, Rangasai V
> > <rangasai.v.chaga...@intel.com>; Gao, Liming
> > <liming....@intel.com>
> > Subject: [edk2-devel] [Patch]
> > IntelSiliconPkg/ShadowMicrocodePei: Fix GCC build
> > error.
> >
> > This patch fixes compiler error introduced by commit
> > b0099a39bd.
> >
> > BZ:
> > https://tianocore.acgmultimedia.com/show_bug.cgi?id=244
> > 9
> > Cc: Ray Ni <ray...@intel.com>
> > Cc: Rangasai V Chaganty <rangasai.v.chaga...@intel.com>
> > Cc: Liming Gao <liming....@intel.com>
> > Signed-off-by: Siyuan Fu <siyuan...@intel.com>
> > ---
> >  .../Feature/ShadowMicrocode/ShadowMicrocodePei.c
> > | 2 +-
> >
> > .../Intel/IntelSiliconPkg/Include/Guid/MicrocodeShadowI
> > nfoHob.h | 2 +-
> >  2 files changed, 2 insertions(+), 2 deletions(-)
> >
> > diff --git
> > a/Silicon/Intel/IntelSiliconPkg/Feature/ShadowMicrocode
> > /ShadowMicrocodePei.c
> > b/Silicon/Intel/IntelSiliconPkg/Feature/ShadowMicrocode
> > /ShadowMicrocodePei.c
> > index 7e4084247e..8d6574f667 100644
> > ---
> > a/Silicon/Intel/IntelSiliconPkg/Feature/ShadowMicrocode
> > /ShadowMicrocodePei.c
> > +++
> > b/Silicon/Intel/IntelSiliconPkg/Feature/ShadowMicrocode
> > /ShadowMicrocodePei.c
> > @@ -247,7 +247,7 @@ ShadowMicrocodePatchWorker (
> >        (VOID *) Patches[Index].Address,
> >        Patches[Index].Size
> >        );
> > -    MicrocodeAddressInMemory[Index] = (UINT64) Walker;
> > +    MicrocodeAddressInMemory[Index] = (UINT64) (UINTN)
> > Walker;
> >      Flashcontext->MicrocodeAddressInFlash[Index]  =
> > (UINT64) Patches[Index].Address;
> >      Walker += Patches[Index].Size;
> >    }
> > diff --git
> > a/Silicon/Intel/IntelSiliconPkg/Include/Guid/MicrocodeS
> > hadowInfoHob.h
> > b/Silicon/Intel/IntelSiliconPkg/Include/Guid/MicrocodeS
> > hadowInfoHob.h
> > index d887b39123..1daae1234a 100644
> > ---
> > a/Silicon/Intel/IntelSiliconPkg/Include/Guid/MicrocodeS
> > hadowInfoHob.h
> > +++
> > b/Silicon/Intel/IntelSiliconPkg/Include/Guid/MicrocodeS
> > hadowInfoHob.h
> > @@ -58,7 +58,7 @@ typedef struct {
> >    // microcode patch address on flash. The address is
> > placed in same
> >    // order as the microcode patches in
> > MicrocodeAddrInMemory.
> >    //
> > -  UINT64  MicrocodeAddressInFlash[];
> > +  UINT64  MicrocodeAddressInFlash[0];
> >  } EFI_MICROCODE_STORAGE_TYPE_FLASH_CONTEXT;
> >
> >  #endif
> > --
> > 2.19.1.windows.1
> >
> >
> > 


-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.

View/Reply Online (#54975): https://edk2.groups.io/g/devel/message/54975
Mute This Topic: https://groups.io/mt/71579115/21656
Group Owner: devel+ow...@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub  [arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-

Reply via email to