On 08/24/2018 05:04 PM, Steve Ellcey wrote:
> Richard,
> 
> I am having a problem building GCC after this patch:
> 
> commit 2515797e5db67076d6cf7f3f185757c841f79edf
> Author: rguenth <rguenth@138bc75d-0d04-0410-961f-82ee72b054a4>
> Date:   Fri Aug 24 11:17:16 2018 +0000
> 
>     2018-08-24  Richard Biener  <rguent...@suse.de>
>    
>         * cfg.h (struct control_flow_graph): Add edge_flags_allocated and
>         bb_flags_allocated members.
>         (auto_flag): New RAII class for allocating flags.
>         (auto_edge_flag): New RAII class for allocating edge flags.
>         (auto_bb_flag): New RAII class for allocating bb flags.
>         * cfgloop.c (verify_loop_structure): Allocate temporary edge
>         flag dynamically.
>         * cfganal.c (dfs_enumerate_from): Remove use of visited sbitmap
>         in favor of temporarily allocated BB flag.
>         * hsa-brig.c: Re-order includes.
>         * hsa-dump.c: Likewise.
>         * hsa-regalloc.c: Likewise.
>         * print-rtl.c: Likewise.
>         * profile-count.c: Likewise.
> 
> The failure is:
> 
> In file included from 
> /home/sellcey/gcc-m/src/gcc/gcc/config/aarch64/aarch64-speculation.cc:28:0:
> /home/sellcey/gcc-m/src/gcc/gcc/cfg.h: In constructor 
> ‘auto_edge_flag::auto_edge_flag(function*)’:
> /home/sellcey/gcc-m/src/gcc/gcc/cfg.h:172:22: error: invalid use of 
> incomplete type ‘struct function’
>      : auto_flag (&fun->cfg->edge_flags_allocated) {}
> 
> It looks like this may be Aarch64 specific build problem since it is 
> compiling a platform specific file.  Is there just a missing include?
That would be my guess.
jeff

Reply via email to