public inbox for gcc-patches@gcc.gnu.org
 help / color / mirror / Atom feed
* gcc build problem (i386.c) -- missing declaration
@ 2016-09-22 23:41 Louis Krupp
  2016-09-23  5:27 ` Anton Blanchard
  2016-09-29 18:44 ` Jeff Law
  0 siblings, 2 replies; 5+ messages in thread
From: Louis Krupp @ 2016-09-22 23:41 UTC (permalink / raw)
  To: gcc-patches

As of revision 240383 , i386.c isn't compiling.  The errors are:  
  
In file included from ../../gcc_trunk/gcc/target-def.h:106:0,  
                 from ../../gcc_trunk/gcc/config/i386/i386.c:81:  
./target-hooks-def.h:92:38: error: ‘hook_uint_uintp_false’ was not declared in this scope  
 #define TARGET_ASM_ELF_FLAGS_NUMERIC hook_uint_uintp_false  
                                      ^  
./target-hooks-def.h:2205:5: note: in expansion of macro ‘TARGET_ASM_ELF_FLAGS_NUMERIC’  
     TARGET_ASM_ELF_FLAGS_NUMERIC, \  
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~  
./target-hooks-def.h:1792:5: note: in expansion of macro ‘TARGET_ASM_OUT’  
     TARGET_ASM_OUT, \  
     ^~~~~~~~~~~~~~  
../../gcc_trunk/gcc/config/i386/i386.c:50811:29: note: in expansion of macro ‘TARGET_INITIALIZER’  
 struct gcc_target targetm = TARGET_INITIALIZER;  
  
The problem seems to be that hook_uint_uintp_false() was added to hooks.c but not to hooks.h.  I have things working on my copy with this change:  
  
--- hooks.h     (revision 240383)  
+++ hooks.h     (working copy)  
@@ -95,6 +95,7 @@ extern tree hook_tree_tree_int_treep_bool_null (tr  
  
 extern unsigned hook_uint_void_0 (void);  
 extern unsigned int hook_uint_mode_0 (machine_mode);  
+extern bool hook_uint_uintp_false (unsigned int, unsigned int *);  
  
 extern bool default_can_output_mi_thunk_no_vcall (const_tree, HOST_WIDE_INT,  
                                                  HOST_WIDE_INT, const_tree);  
  
If I'm not missing something, and if this is a genuine build problem, and if this change looks good, I can commit it unless someone else is in the process of doing that.  I just need someone's approval.  (I should add that I'm on the Fortran commit-after-approval list, but I'm not on a general gcc list as far as I know.) 
 
Louis Krupp  


^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: gcc build problem (i386.c) -- missing declaration
  2016-09-22 23:41 gcc build problem (i386.c) -- missing declaration Louis Krupp
@ 2016-09-23  5:27 ` Anton Blanchard
  2016-09-29 18:44 ` Jeff Law
  1 sibling, 0 replies; 5+ messages in thread
From: Anton Blanchard @ 2016-09-23  5:27 UTC (permalink / raw)
  To: Louis Krupp; +Cc: gcc-patches

Hi,

>  extern unsigned hook_uint_void_0 (void);  
>  extern unsigned int hook_uint_mode_0 (machine_mode);  
> +extern bool hook_uint_uintp_false (unsigned int, unsigned int *);  

I'm seeing the same build issue on ppc64le, and your patch fixes it.
Thanks.

Anton

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: gcc build problem (i386.c) -- missing declaration
  2016-09-22 23:41 gcc build problem (i386.c) -- missing declaration Louis Krupp
  2016-09-23  5:27 ` Anton Blanchard
@ 2016-09-29 18:44 ` Jeff Law
  2016-09-29 18:46   ` Louis Krupp
  1 sibling, 1 reply; 5+ messages in thread
From: Jeff Law @ 2016-09-29 18:44 UTC (permalink / raw)
  To: Louis Krupp, gcc-patches

On 09/22/2016 04:52 PM, Louis Krupp wrote:
> As of revision 240383 , i386.c isn't compiling.  The errors are:
>
> In file included from ../../gcc_trunk/gcc/target-def.h:106:0,
>                  from ../../gcc_trunk/gcc/config/i386/i386.c:81:
> ./target-hooks-def.h:92:38: error: ‘hook_uint_uintp_false’ was not declared in this scope
>  #define TARGET_ASM_ELF_FLAGS_NUMERIC hook_uint_uintp_false
>                                       ^
> ./target-hooks-def.h:2205:5: note: in expansion of macro ‘TARGET_ASM_ELF_FLAGS_NUMERIC’
>      TARGET_ASM_ELF_FLAGS_NUMERIC, \
>      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
> ./target-hooks-def.h:1792:5: note: in expansion of macro ‘TARGET_ASM_OUT’
>      TARGET_ASM_OUT, \
>      ^~~~~~~~~~~~~~
> ../../gcc_trunk/gcc/config/i386/i386.c:50811:29: note: in expansion of macro ‘TARGET_INITIALIZER’
>  struct gcc_target targetm = TARGET_INITIALIZER;
>
> The problem seems to be that hook_uint_uintp_false() was added to hooks.c but not to hooks.h.  I have things working on my copy with this change:
>
> --- hooks.h     (revision 240383)
> +++ hooks.h     (working copy)
> @@ -95,6 +95,7 @@ extern tree hook_tree_tree_int_treep_bool_null (tr
>
>  extern unsigned hook_uint_void_0 (void);
>  extern unsigned int hook_uint_mode_0 (machine_mode);
> +extern bool hook_uint_uintp_false (unsigned int, unsigned int *);
>
>  extern bool default_can_output_mi_thunk_no_vcall (const_tree, HOST_WIDE_INT,
>                                                   HOST_WIDE_INT, const_tree);
>
> If I'm not missing something, and if this is a genuine build problem, and if this change looks good, I can commit it unless someone else is in the process of doing that.  I just need someone's approval.  (I should add that I'm on the Fortran commit-after-approval list, but I'm not on a general gcc list as far as I know.)
>
Unfortunately you didn't indicate the target you used.  Just saying 
"i386.c" isn't helpful as significant amounts of code in i386.c are 
conditionalized based on the target triplet (ie something like 
x86_64-pc-linux-gnu or i686-pc-kfreebsd-gnu.

What specific target were you trying to build?

Jeff

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: gcc build problem (i386.c) -- missing declaration
  2016-09-29 18:44 ` Jeff Law
@ 2016-09-29 18:46   ` Louis Krupp
  2016-10-03 12:15     ` Gerald Pfeifer
  0 siblings, 1 reply; 5+ messages in thread
From: Louis Krupp @ 2016-09-29 18:46 UTC (permalink / raw)
  To: Jeff Law; +Cc: gcc-patches

My target was gfortran.

In any case, someone else fixed this problem.

Louis


 ---- On Thu, 29 Sep 2016 11:10:15 -0700 Jeff Law <law@redhat.com> wrote ---- 
 > On 09/22/2016 04:52 PM, Louis Krupp wrote: 
 > > As of revision 240383 , i386.c isn't compiling.  The errors are: 
 > > 
 > > In file included from ../../gcc_trunk/gcc/target-def.h:106:0, 
 > >                  from ../../gcc_trunk/gcc/config/i386/i386.c:81: 
 > > ./target-hooks-def.h:92:38: error: ‘hook_uint_uintp_false’ was not declared in this scope 
 > >  #define TARGET_ASM_ELF_FLAGS_NUMERIC hook_uint_uintp_false 
 > >                                       ^ 
 > > ./target-hooks-def.h:2205:5: note: in expansion of macro ‘TARGET_ASM_ELF_FLAGS_NUMERIC’ 
 > >      TARGET_ASM_ELF_FLAGS_NUMERIC, \ 
 > >      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~ 
 > > ./target-hooks-def.h:1792:5: note: in expansion of macro ‘TARGET_ASM_OUT’ 
 > >      TARGET_ASM_OUT, \ 
 > >      ^~~~~~~~~~~~~~ 
 > > ../../gcc_trunk/gcc/config/i386/i386.c:50811:29: note: in expansion of macro ‘TARGET_INITIALIZER’ 
 > >  struct gcc_target targetm = TARGET_INITIALIZER; 
 > > 
 > > The problem seems to be that hook_uint_uintp_false() was added to hooks.c but not to hooks.h.  I have things working on my copy with this change: 
 > > 
 > > --- hooks.h     (revision 240383) 
 > > +++ hooks.h     (working copy) 
 > > @@ -95,6 +95,7 @@ extern tree hook_tree_tree_int_treep_bool_null (tr 
 > > 
 > >  extern unsigned hook_uint_void_0 (void); 
 > >  extern unsigned int hook_uint_mode_0 (machine_mode); 
 > > +extern bool hook_uint_uintp_false (unsigned int, unsigned int *); 
 > > 
 > >  extern bool default_can_output_mi_thunk_no_vcall (const_tree, HOST_WIDE_INT, 
 > >                                                   HOST_WIDE_INT, const_tree); 
 > > 
 > > If I'm not missing something, and if this is a genuine build problem, and if this change looks good, I can commit it unless someone else is in the process of doing that.  I just need someone's approval.  (I should add that I'm on the Fortran commit-after-approval list, but I'm not on a general gcc list as far as I know.) 
 > > 
 > Unfortunately you didn't indicate the target you used.  Just saying  
 > "i386.c" isn't helpful as significant amounts of code in i386.c are  
 > conditionalized based on the target triplet (ie something like  
 > x86_64-pc-linux-gnu or i686-pc-kfreebsd-gnu. 
 >  
 > What specific target were you trying to build? 
 >  
 > Jeff 
 >  
 > 


^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: gcc build problem (i386.c) -- missing declaration
  2016-09-29 18:46   ` Louis Krupp
@ 2016-10-03 12:15     ` Gerald Pfeifer
  0 siblings, 0 replies; 5+ messages in thread
From: Gerald Pfeifer @ 2016-10-03 12:15 UTC (permalink / raw)
  To: Louis Krupp; +Cc: Jeff Law, gcc-patches

On Thu, 29 Sep 2016, Louis Krupp wrote:
> My target was gfortran.
> 
> In any case, someone else fixed this problem.

Good.

Note that by target we are referring to the platform (processor plus
operating system).  You can see this by looking for a line started
with "Target:" in the output of `gcc -v`.

On one of my machines this says "Target: x86_64-suse-linux", on
another one "Target: i386-unknown-freebsd10.3", for example.

Gerald

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2016-10-03 12:15 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2016-09-22 23:41 gcc build problem (i386.c) -- missing declaration Louis Krupp
2016-09-23  5:27 ` Anton Blanchard
2016-09-29 18:44 ` Jeff Law
2016-09-29 18:46   ` Louis Krupp
2016-10-03 12:15     ` Gerald Pfeifer

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).