public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug bootstrap/44426]  New: gcc 4.5.0 requires c9x compiler to build
@ 2010-06-05 14:24 jay dot krell at cornell dot edu
  2010-06-05 14:54 ` [Bug bootstrap/44426] [4.5/4.6 Regression] " jsm28 at gcc dot gnu dot org
                   ` (17 more replies)
  0 siblings, 18 replies; 19+ messages in thread
From: jay dot krell at cornell dot edu @ 2010-06-05 14:24 UTC (permalink / raw)
  To: gcc-bugs

Surprising. I'll try 4.4.

cc -c  -g -DIN_GCC    -DHAVE_CONFIG_H -I. -I. -I/home/jayk/src/gcc-4.5.0/gcc
-I/home/jayk/src/gcc-4.5.0/gcc/. -I/home/jayk/src/gcc-4.5.0/gcc/../include
-I/home/jayk/src/gcc-4.5.0/gcc/../libcpp/include -I/home/jayk/include 
-I/home/jayk/src/gcc-4.5.0/gcc/../libdecnumber
-I/home/jayk/src/gcc-4.5.0/gcc/../libdecnumber/dpd -I../libdecnumber    
/home/jayk/src/gcc-4.5.0/gcc/tree-mudflap.c -o tree-mudflap.o
cc: Warning: /home/jayk/src/gcc-4.5.0/gcc/tree.h, line 4943: Formal parameter
isn't an identifier. (badformalparm)
#define build_call_expr(...)\
------------------------^
cc: Warning: /home/jayk/src/gcc-4.5.0/gcc/tree-mudflap.c, line 1262: Too many
actual parameters in macro call. (toomanyactls)
  call_stmt = build_call_expr (mf_register_fndecl, 4,
-------------------------------^
cc: Warning: /home/jayk/src/gcc-4.5.0/gcc/tree-mudflap.c, line 1324: Too many
actual parameters in macro call. (toomanyactls)
    tree call2_stmt = build_call_expr (mf_init_fndecl, 0);
---------------------------------------^
cc: Warning: /home/jayk/src/gcc-4.5.0/gcc/tree-mudflap.c, line 1332: Too many
actual parameters in macro call. (toomanyactls)
      tree call_stmt = build_call_expr (mf_set_options_fndecl, 1, arg);
----------------------------------------^
cc: Error: /home/jayk/src/gcc-4.5.0/gcc/tree-mudflap.c, line 1262: In this
statement, "__VA_ARGS__" is not declared. (undeclared)
  call_stmt = build_call_expr (mf_register_fndecl, 4,
--------------^
cc: Error: /home/jayk/src/gcc-4.5.0/gcc/tree-mudflap.c, line 1262: In this
statement, "build_call_expr_loc" expects 3 arguments, but 2 are supplied.
(toofewargs)
  call_stmt = build_call_expr (mf_register_fndecl, 4,
--------------^
cc: Error: /home/jayk/src/gcc-4.5.0/gcc/tree-mudflap.c, line 1324: In the
initializer for call2_stmt, "__VA_ARGS__" is not declared. (undeclared)
    tree call2_stmt = build_call_expr (mf_init_fndecl, 0);
----------------------^
cc: Error: /home/jayk/src/gcc-4.5.0/gcc/tree-mudflap.c, line 1324: In the
initializer for call2_stmt, "build_call_expr_loc" expects 3 arguments, but 2
are supplied. (toofewargs)
    tree call2_stmt = build_call_expr (mf_init_fndecl, 0);
----------------------^
cc: Error: /home/jayk/src/gcc-4.5.0/gcc/tree-mudflap.c, line 1332: In the
initializer for call_stmt, "__VA_ARGS__" is not declared. (undeclared)
      tree call_stmt = build_call_expr (mf_set_options_fndecl, 1, arg);
-----------------------^
cc: Error: /home/jayk/src/gcc-4.5.0/gcc/tree-mudflap.c, line 1332: In the
initializer for call_stmt, "build_call_expr_loc" expects 3 arguments, but 2 are
supplied. (toofewargs)
      tree call_stmt = build_call_expr (mf_set_options_fndecl, 1, arg);
-----------------------^
make[3]: *** [tree-mudflap.o] Error 1


#define build_call_expr(...)\
   build_call_expr_loc (UNKNOWN_LOCATION, __VA_ARGS__)


-- 
           Summary: gcc 4.5.0 requires c9x compiler to build
           Product: gcc
           Version: 4.5.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: bootstrap
        AssignedTo: unassigned at gcc dot gnu dot org
        ReportedBy: jay dot krell at cornell dot edu


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44426


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

* [Bug bootstrap/44426] [4.5/4.6 Regression] gcc 4.5.0 requires c9x compiler to build
  2010-06-05 14:24 [Bug bootstrap/44426] New: gcc 4.5.0 requires c9x compiler to build jay dot krell at cornell dot edu
@ 2010-06-05 14:54 ` jsm28 at gcc dot gnu dot org
  2010-06-05 15:14 ` jay dot krell at cornell dot edu
                   ` (16 subsequent siblings)
  17 siblings, 0 replies; 19+ messages in thread
From: jsm28 at gcc dot gnu dot org @ 2010-06-05 14:54 UTC (permalink / raw)
  To: gcc-bugs

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain, Size: 2338 bytes --]



------- Comment #1 from jsm28 at gcc dot gnu dot org  2010-06-05 14:54 -------
Appears to have been introduced by r149722.

r149722 | manu | 2009-07-16 22:29:52 +0000 (Thu, 16 Jul 2009) | 60 lines

2009-07-17  Aldy Hernandez  <aldyh@redhat.com>
            Manuel López-Ibáñez  <manu@gcc.gnu.org>

        PR 40435 
        * tree-complex.c, tree-loop-distribution.c,
        tree.c, tree.h, builtins.c, fold-const.c, omp-low.c,
        cgraphunit.c, tree-ssa-ccp.c, tree-ssa-dom.c,
        gimple-low.c, expr.c, tree-ssa-ifcombine.c, c-decl.c,
        stor-layout.c, tree-if-conv.c, c-typeck.c,
        gimplify.c, calls.c, tree-sra.c, tree-mudflap.c,
        tree-ssa-copy.c, tree-ssa-forwprop.c, c-convert.c, c-omp.c,
        varasm.c, tree-inline.c, c-common.c,
        c-common.h, gimple.c, tree-switch-conversion.c, gimple.h,
        tree-cfg.c, c-parser.c, convert.c: Add location
        argument to fold_{unary,binary,ternary}, fold_build[123],
        build_call_expr, build_size_arg, build_fold_addr_expr,
        build_call_array, non_lvalue, size_diffop,
        fold_build1_initializer, fold_build2_initializer,
        fold_build3_initializer, fold_build_call_array,
        fold_build_call_array_initializer, fold_single_bit_test,
        omit_one_operand, omit_two_operands, invert_truthvalue,
        fold_truth_not_expr, build_fold_indirect_ref, fold_indirect_ref,
        combine_comparisons, fold_builtin_*, fold_call_expr,
        build_range_check, maybe_fold_offset_to_address, round_up,
        round_down.
[...]


-- 

jsm28 at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |manu at gcc dot gnu dot org
             Status|UNCONFIRMED                 |NEW
     Ever Confirmed|0                           |1
   Last reconfirmed|0000-00-00 00:00:00         |2010-06-05 14:54:40
               date|                            |
            Summary|gcc 4.5.0 requires c9x      |[4.5/4.6 Regression] gcc
                   |compiler to build           |4.5.0 requires c9x compiler
                   |                            |to build
   Target Milestone|---                         |4.5.1


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44426


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

* [Bug bootstrap/44426] [4.5/4.6 Regression] gcc 4.5.0 requires c9x compiler to build
  2010-06-05 14:24 [Bug bootstrap/44426] New: gcc 4.5.0 requires c9x compiler to build jay dot krell at cornell dot edu
  2010-06-05 14:54 ` [Bug bootstrap/44426] [4.5/4.6 Regression] " jsm28 at gcc dot gnu dot org
@ 2010-06-05 15:14 ` jay dot krell at cornell dot edu
  2010-06-05 15:51 ` manu at gcc dot gnu dot org
                   ` (15 subsequent siblings)
  17 siblings, 0 replies; 19+ messages in thread
From: jay dot krell at cornell dot edu @ 2010-06-05 15:14 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #2 from jay dot krell at cornell dot edu  2010-06-05 15:13 -------
similar with 4.4.4. I'll try 4.3. Eventually I might build but I never know the
minimal set of files to get for sysroot.. :(

--------^
cc: Error: /home/jayk/src/gcc-4.4.4/gcc/sel-sched-dump.c, line 258: In the
initializer for __j, "__VA_ARGS__" is not declared. (undeclared)
    sel_print ("prio:%d;", EXPR_PRIORITY (expr));
----^

bash-4.1$ grep sel_print  /home/jayk/src/gcc-4.4.4/gcc/*h              
/home/jayk/src/gcc-4.4.4/gcc/sel-sched-dump.h:#define sel_print_to_dot(...)    
                      \
/home/jayk/src/gcc-4.4.4/gcc/sel-sched-dump.h:#define sel_print(...)           
\
/home/jayk/src/gcc-4.4.4/gcc/sel-sched-dump.h:      sel_print_to_dot
(__VA_ARGS__);                   \
/home/jayk/src/gcc-4.4.4/gcc/sel-sched-dump.h:extern const char *
sel_print_insn (const_rtx, int);
/home/jayk/src/gcc-4.4.4/gcc/sel-sched-dump.h:extern void sel_print_rtl (rtx
x);


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44426


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

* [Bug bootstrap/44426] [4.5/4.6 Regression] gcc 4.5.0 requires c9x compiler to build
  2010-06-05 14:24 [Bug bootstrap/44426] New: gcc 4.5.0 requires c9x compiler to build jay dot krell at cornell dot edu
  2010-06-05 14:54 ` [Bug bootstrap/44426] [4.5/4.6 Regression] " jsm28 at gcc dot gnu dot org
  2010-06-05 15:14 ` jay dot krell at cornell dot edu
@ 2010-06-05 15:51 ` manu at gcc dot gnu dot org
  2010-06-05 17:37 ` joseph at codesourcery dot com
                   ` (14 subsequent siblings)
  17 siblings, 0 replies; 19+ messages in thread
From: manu at gcc dot gnu dot org @ 2010-06-05 15:51 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #3 from manu at gcc dot gnu dot org  2010-06-05 15:50 -------
Do you mean we should not use VA_ARGS in GCC? Then, what? static inline? Is
this warned by -pedantic? Shouldn't it?


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44426


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

* [Bug bootstrap/44426] [4.5/4.6 Regression] gcc 4.5.0 requires c9x compiler to build
  2010-06-05 14:24 [Bug bootstrap/44426] New: gcc 4.5.0 requires c9x compiler to build jay dot krell at cornell dot edu
                   ` (2 preceding siblings ...)
  2010-06-05 15:51 ` manu at gcc dot gnu dot org
@ 2010-06-05 17:37 ` joseph at codesourcery dot com
  2010-06-05 17:40 ` [Bug bootstrap/44426] [4.4/4.5/4.6 " jsm28 at gcc dot gnu dot org
                   ` (13 subsequent siblings)
  17 siblings, 0 replies; 19+ messages in thread
From: joseph at codesourcery dot com @ 2010-06-05 17:37 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #4 from joseph at codesourcery dot com  2010-06-05 17:36 -------
Subject: Re:  [4.5/4.6 Regression] gcc 4.5.0 requires
 c9x compiler to build

On Sat, 5 Jun 2010, manu at gcc dot gnu dot org wrote:

> Do you mean we should not use VA_ARGS in GCC? Then, what? static inline? Is
> this warned by -pedantic? Shouldn't it?

Variadic macros are not standard C90 or C++98 and should only be used 
*conditionally* if the compiler being used to build GCC supports them.  
Otherwise you need to define a function - which in practice won't be 
inline (inline variadic functions, passing on their variable arguments to 
another variadic function, require GNU extensions that are much more 
recent than variadic macros).

I think

#if GCC_VERSION >= 3000 || __STDC_VERSION__ >= 199901L

is a suitable condition for support of variadic macros.

Because these macros may be used *conditionally*, GCC is built with 
-Wno-variadic-macros.

For the cases that are inserting UNKNOWN_LOCATION, I'd suggest just 
changing all the call sites of the macro to pass UNKNOWN_LOCATION 
explicitly, and removing the macro.  That should deal with build_call_expr 
and with build_call_nofold in builtins.c.

For the cases in sel-sched-dump.h I'd suggest just using normal variadic 
functions that use interfaces such as vfprintf and vasprintf, and not 
macros at all.


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44426


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

* [Bug bootstrap/44426] [4.4/4.5/4.6 Regression] gcc 4.5.0 requires c9x compiler to build
  2010-06-05 14:24 [Bug bootstrap/44426] New: gcc 4.5.0 requires c9x compiler to build jay dot krell at cornell dot edu
                   ` (3 preceding siblings ...)
  2010-06-05 17:37 ` joseph at codesourcery dot com
@ 2010-06-05 17:40 ` jsm28 at gcc dot gnu dot org
  2010-06-05 17:52 ` rguenth at gcc dot gnu dot org
                   ` (12 subsequent siblings)
  17 siblings, 0 replies; 19+ messages in thread
From: jsm28 at gcc dot gnu dot org @ 2010-06-05 17:40 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #5 from jsm28 at gcc dot gnu dot org  2010-06-05 17:40 -------
build_call_nofold in builtins.c introduced by:

r152236 | matz | 2009-09-28 12:54:23 +0000 (Mon, 28 Sep 2009) | 54 lines

        * builtins.c (interclass_mathfn_icode): New helper.
[...]

Variadic macros in sel-sched-dump.h introduced when that header was added:

r139854 | abel | 2008-09-01 08:57:00 +0000 (Mon, 01 Sep 2008) | 405 lines

2008-08-31  Andrey Belevantsev  <abel@ispras.ru>
        Dmitry Melnik  <dm@ispras.ru>
        Dmitry Zhurikhin  <zhur@ispras.ru>
        Alexander Monakov  <amonakov@ispras.ru>
        Maxim Kuvyrkov  <maxim@codesourcery.com>

        * sel-sched.h, sel-sched-dump.h, sel-sched-ir.h, sel-sched.c,
        sel-sched-dump.c, sel-sched-ir.c: New files.
[...]


-- 

jsm28 at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |abel at gcc dot gnu dot org,
                   |                            |matz at gcc dot gnu dot org
            Summary|[4.5/4.6 Regression] gcc    |[4.4/4.5/4.6 Regression] gcc
                   |4.5.0 requires c9x compiler |4.5.0 requires c9x compiler
                   |to build                    |to build
   Target Milestone|4.5.1                       |4.4.5


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44426


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

* [Bug bootstrap/44426] [4.4/4.5/4.6 Regression] gcc 4.5.0 requires c9x compiler to build
  2010-06-05 14:24 [Bug bootstrap/44426] New: gcc 4.5.0 requires c9x compiler to build jay dot krell at cornell dot edu
                   ` (4 preceding siblings ...)
  2010-06-05 17:40 ` [Bug bootstrap/44426] [4.4/4.5/4.6 " jsm28 at gcc dot gnu dot org
@ 2010-06-05 17:52 ` rguenth at gcc dot gnu dot org
  2010-06-05 19:05 ` manu at gcc dot gnu dot org
                   ` (11 subsequent siblings)
  17 siblings, 0 replies; 19+ messages in thread
From: rguenth at gcc dot gnu dot org @ 2010-06-05 17:52 UTC (permalink / raw)
  To: gcc-bugs



-- 

rguenth at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Priority|P3                          |P2


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44426


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

* [Bug bootstrap/44426] [4.4/4.5/4.6 Regression] gcc 4.5.0 requires c9x compiler to build
  2010-06-05 14:24 [Bug bootstrap/44426] New: gcc 4.5.0 requires c9x compiler to build jay dot krell at cornell dot edu
                   ` (5 preceding siblings ...)
  2010-06-05 17:52 ` rguenth at gcc dot gnu dot org
@ 2010-06-05 19:05 ` manu at gcc dot gnu dot org
  2010-06-05 19:10 ` rguenth at gcc dot gnu dot org
                   ` (10 subsequent siblings)
  17 siblings, 0 replies; 19+ messages in thread
From: manu at gcc dot gnu dot org @ 2010-06-05 19:05 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #6 from manu at gcc dot gnu dot org  2010-06-05 19:04 -------
(In reply to comment #4)
> Subject: Re:  [4.5/4.6 Regression] gcc 4.5.0 requires
>  c9x compiler to build
> 
> On Sat, 5 Jun 2010, manu at gcc dot gnu dot org wrote:
> 
> > Do you mean we should not use VA_ARGS in GCC? Then, what? static inline? Is
> > this warned by -pedantic? Shouldn't it?
> 
> Variadic macros are not standard C90 or C++98 and should only be used 
> *conditionally* if the compiler being used to build GCC supports them.  

Why add a conditional definition if an alternative without VA_ARGS is needed?
Using VA_ARGS+alternative does not seem to give any benefits.

> I think
> 
> #if GCC_VERSION >= 3000 || __STDC_VERSION__ >= 199901L
> 
> is a suitable condition for support of variadic macros.
> 
> Because these macros may be used *conditionally*, GCC is built with 
> -Wno-variadic-macros.

I don't see the benefit on using them conditionally. I would rather not use
them at all than have to fix something afterwards.

> For the cases that are inserting UNKNOWN_LOCATION, I'd suggest just 
> changing all the call sites of the macro to pass UNKNOWN_LOCATION 
> explicitly, and removing the macro.  That should deal with build_call_expr 
> and with build_call_nofold in builtins.c.

OK for me but this was done on purpose. So I won't even try to fix this until
the corresponding maintainer pre-approves such patch.



-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44426


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

* [Bug bootstrap/44426] [4.4/4.5/4.6 Regression] gcc 4.5.0 requires c9x compiler to build
  2010-06-05 14:24 [Bug bootstrap/44426] New: gcc 4.5.0 requires c9x compiler to build jay dot krell at cornell dot edu
                   ` (6 preceding siblings ...)
  2010-06-05 19:05 ` manu at gcc dot gnu dot org
@ 2010-06-05 19:10 ` rguenth at gcc dot gnu dot org
  2010-06-05 19:39 ` manu at gcc dot gnu dot org
                   ` (9 subsequent siblings)
  17 siblings, 0 replies; 19+ messages in thread
From: rguenth at gcc dot gnu dot org @ 2010-06-05 19:10 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #7 from rguenth at gcc dot gnu dot org  2010-06-05 19:10 -------
(In reply to comment #6)
> (In reply to comment #4)
> > Subject: Re:  [4.5/4.6 Regression] gcc 4.5.0 requires
> >  c9x compiler to build
> > 
> > On Sat, 5 Jun 2010, manu at gcc dot gnu dot org wrote:
> > 
> > > Do you mean we should not use VA_ARGS in GCC? Then, what? static inline? Is
> > > this warned by -pedantic? Shouldn't it?
> > 
> > Variadic macros are not standard C90 or C++98 and should only be used 
> > *conditionally* if the compiler being used to build GCC supports them.  
> 
> Why add a conditional definition if an alternative without VA_ARGS is needed?
> Using VA_ARGS+alternative does not seem to give any benefits.
> 
> > I think
> > 
> > #if GCC_VERSION >= 3000 || __STDC_VERSION__ >= 199901L
> > 
> > is a suitable condition for support of variadic macros.
> > 
> > Because these macros may be used *conditionally*, GCC is built with 
> > -Wno-variadic-macros.
> 
> I don't see the benefit on using them conditionally. I would rather not use
> them at all than have to fix something afterwards.
> 
> > For the cases that are inserting UNKNOWN_LOCATION, I'd suggest just 
> > changing all the call sites of the macro to pass UNKNOWN_LOCATION 
> > explicitly, and removing the macro.  That should deal with build_call_expr 
> > and with build_call_nofold in builtins.c.
> 
> OK for me but this was done on purpose. So I won't even try to fix this until
> the corresponding maintainer pre-approves such patch.

Please instead make a static inline variadic alternative instead (so we
still use variadic macros if available).


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44426


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

* [Bug bootstrap/44426] [4.4/4.5/4.6 Regression] gcc 4.5.0 requires c9x compiler to build
  2010-06-05 14:24 [Bug bootstrap/44426] New: gcc 4.5.0 requires c9x compiler to build jay dot krell at cornell dot edu
                   ` (7 preceding siblings ...)
  2010-06-05 19:10 ` rguenth at gcc dot gnu dot org
@ 2010-06-05 19:39 ` manu at gcc dot gnu dot org
  2010-06-05 21:33 ` joseph at codesourcery dot com
                   ` (8 subsequent siblings)
  17 siblings, 0 replies; 19+ messages in thread
From: manu at gcc dot gnu dot org @ 2010-06-05 19:39 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #8 from manu at gcc dot gnu dot org  2010-06-05 19:39 -------
(In reply to comment #7)
> > 
> > > For the cases that are inserting UNKNOWN_LOCATION, I'd suggest just 
> > > changing all the call sites of the macro to pass UNKNOWN_LOCATION 
> > > explicitly, and removing the macro.  That should deal with build_call_expr 
> > > and with build_call_nofold in builtins.c.
> > 
> > OK for me but this was done on purpose. So I won't even try to fix this until
> > the corresponding maintainer pre-approves such patch.
> 
> Please instead make a static inline variadic alternative instead (so we
> still use variadic macros if available).
> 

You'll have to be more specific. What is the alternative in the above case when
no variadic stuff can be used? If the alternative is to change all call sites,
then we do not need variadic stuff.


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44426


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

* [Bug bootstrap/44426] [4.4/4.5/4.6 Regression] gcc 4.5.0 requires c9x compiler to build
  2010-06-05 14:24 [Bug bootstrap/44426] New: gcc 4.5.0 requires c9x compiler to build jay dot krell at cornell dot edu
                   ` (8 preceding siblings ...)
  2010-06-05 19:39 ` manu at gcc dot gnu dot org
@ 2010-06-05 21:33 ` joseph at codesourcery dot com
  2010-06-14  8:55 ` jakub at gcc dot gnu dot org
                   ` (7 subsequent siblings)
  17 siblings, 0 replies; 19+ messages in thread
From: joseph at codesourcery dot com @ 2010-06-05 21:33 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #9 from joseph at codesourcery dot com  2010-06-05 21:33 -------
Subject: Re:  [4.4/4.5/4.6 Regression] gcc 4.5.0 requires
 c9x compiler to build

On Sat, 5 Jun 2010, manu at gcc dot gnu dot org wrote:

> 
> 
> ------- Comment #6 from manu at gcc dot gnu dot org  2010-06-05 19:04 -------
> (In reply to comment #4)
> > Subject: Re:  [4.5/4.6 Regression] gcc 4.5.0 requires
> >  c9x compiler to build
> > 
> > On Sat, 5 Jun 2010, manu at gcc dot gnu dot org wrote:
> > 
> > > Do you mean we should not use VA_ARGS in GCC? Then, what? static inline? Is
> > > this warned by -pedantic? Shouldn't it?
> > 
> > Variadic macros are not standard C90 or C++98 and should only be used 
> > *conditionally* if the compiler being used to build GCC supports them.  
> 
> Why add a conditional definition if an alternative without VA_ARGS is needed?
> Using VA_ARGS+alternative does not seem to give any benefits.

At least in some cases for which variadic macros have been used, I suppose 
they result in a faster compiler than the alternative - for example, they 
were used when transitioning from variadic "build" to separate 
(non-variadic, so faster) buildN functions.  There may be less use for 
conditional uses in the present cases.

You can't readily use an inline function to replace the present uses of 
variadic macros; __builtin_va_arg_pack (a GNU extension) would be needed 
for a straightforward conversion.


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44426


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

* [Bug bootstrap/44426] [4.4/4.5/4.6 Regression] gcc 4.5.0 requires c9x compiler to build
  2010-06-05 14:24 [Bug bootstrap/44426] New: gcc 4.5.0 requires c9x compiler to build jay dot krell at cornell dot edu
                   ` (9 preceding siblings ...)
  2010-06-05 21:33 ` joseph at codesourcery dot com
@ 2010-06-14  8:55 ` jakub at gcc dot gnu dot org
  2010-06-14 10:20 ` jakub at gcc dot gnu dot org
                   ` (6 subsequent siblings)
  17 siblings, 0 replies; 19+ messages in thread
From: jakub at gcc dot gnu dot org @ 2010-06-14  8:55 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #10 from jakub at gcc dot gnu dot org  2010-06-14 08:54 -------
In sel_print* case I wonder why it is defined as macros at all, it surely
bloats sel-sched* a lot for something that isn't enabled by default (verbose
dumps).


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44426


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

* [Bug bootstrap/44426] [4.4/4.5/4.6 Regression] gcc 4.5.0 requires c9x compiler to build
  2010-06-05 14:24 [Bug bootstrap/44426] New: gcc 4.5.0 requires c9x compiler to build jay dot krell at cornell dot edu
                   ` (10 preceding siblings ...)
  2010-06-14  8:55 ` jakub at gcc dot gnu dot org
@ 2010-06-14 10:20 ` jakub at gcc dot gnu dot org
  2010-06-14 15:54 ` jakub at gcc dot gnu dot org
                   ` (5 subsequent siblings)
  17 siblings, 0 replies; 19+ messages in thread
From: jakub at gcc dot gnu dot org @ 2010-06-14 10:20 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #11 from jakub at gcc dot gnu dot org  2010-06-14 10:20 -------
Patch for sel_print posted:
http://gcc.gnu.org/ml/gcc-patches/2010-06/msg01400.html


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44426


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

* [Bug bootstrap/44426] [4.4/4.5/4.6 Regression] gcc 4.5.0 requires c9x compiler to build
  2010-06-05 14:24 [Bug bootstrap/44426] New: gcc 4.5.0 requires c9x compiler to build jay dot krell at cornell dot edu
                   ` (11 preceding siblings ...)
  2010-06-14 10:20 ` jakub at gcc dot gnu dot org
@ 2010-06-14 15:54 ` jakub at gcc dot gnu dot org
  2010-06-14 16:01 ` jakub at gcc dot gnu dot org
                   ` (4 subsequent siblings)
  17 siblings, 0 replies; 19+ messages in thread
From: jakub at gcc dot gnu dot org @ 2010-06-14 15:54 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #12 from jakub at gcc dot gnu dot org  2010-06-14 15:54 -------
Subject: Bug 44426

Author: jakub
Date: Mon Jun 14 15:53:38 2010
New Revision: 160754

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=160754
Log:
        PR bootstrap/44426
        * tree.h (build_call_expr): Don't define as vararg macro, instead
        add a prototype.
        * builtins.c (build_call_nofold): Remove.
        (expand_builtin_int_roundingfn, expand_builtin_pow,
        expand_builtin_mempcpy_args, expand_builtin_stpcpy,
        expand_builtin_memset_args, expand_builtin_strcmp,
        expand_builtin_strncmp, expand_builtin_memory_chk): Use
        build_call_nofold_loc instead of build_call_nofold.
        (build_call_expr): New function.

Modified:
    trunk/gcc/ChangeLog
    trunk/gcc/builtins.c
    trunk/gcc/tree.h


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44426


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

* [Bug bootstrap/44426] [4.4/4.5/4.6 Regression] gcc 4.5.0 requires c9x compiler to build
  2010-06-05 14:24 [Bug bootstrap/44426] New: gcc 4.5.0 requires c9x compiler to build jay dot krell at cornell dot edu
                   ` (12 preceding siblings ...)
  2010-06-14 15:54 ` jakub at gcc dot gnu dot org
@ 2010-06-14 16:01 ` jakub at gcc dot gnu dot org
  2010-06-21 16:27 ` jakub at gcc dot gnu dot org
                   ` (3 subsequent siblings)
  17 siblings, 0 replies; 19+ messages in thread
From: jakub at gcc dot gnu dot org @ 2010-06-14 16:01 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #13 from jakub at gcc dot gnu dot org  2010-06-14 16:01 -------
Subject: Bug 44426

Author: jakub
Date: Mon Jun 14 16:00:39 2010
New Revision: 160755

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=160755
Log:
        PR bootstrap/44426
        * tree.h (build_call_expr): Don't define as vararg macro, instead
        add a prototype.
        * builtins.c (build_call_nofold): Remove.
        (expand_builtin_int_roundingfn, expand_builtin_pow,
        expand_builtin_mempcpy_args, expand_builtin_stpcpy,
        expand_builtin_memset_args, expand_builtin_strcmp,
        expand_builtin_strncmp, expand_builtin_memory_chk): Use
        build_call_nofold_loc instead of build_call_nofold.
        (build_call_expr): New function.

Modified:
    branches/gcc-4_5-branch/gcc/ChangeLog
    branches/gcc-4_5-branch/gcc/builtins.c
    branches/gcc-4_5-branch/gcc/tree.h


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44426


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

* [Bug bootstrap/44426] [4.4/4.5/4.6 Regression] gcc 4.5.0 requires c9x compiler to build
  2010-06-05 14:24 [Bug bootstrap/44426] New: gcc 4.5.0 requires c9x compiler to build jay dot krell at cornell dot edu
                   ` (13 preceding siblings ...)
  2010-06-14 16:01 ` jakub at gcc dot gnu dot org
@ 2010-06-21 16:27 ` jakub at gcc dot gnu dot org
  2010-06-21 17:07 ` jakub at gcc dot gnu dot org
                   ` (2 subsequent siblings)
  17 siblings, 0 replies; 19+ messages in thread
From: jakub at gcc dot gnu dot org @ 2010-06-21 16:27 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #14 from jakub at gcc dot gnu dot org  2010-06-21 16:27 -------
Subject: Bug 44426

Author: jakub
Date: Mon Jun 21 16:26:25 2010
New Revision: 161092

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=161092
Log:
        PR bootstrap/44426
        * sel-sched-dump.h (sel_prepare_string_for_dot_label): Remove
        prototype.
        (sel_print_to_dot): Remove macro.
        (sel_print): Likewise.  New prototype.
        * sel-sched-dump.c (sel_prepare_string_for_dot_label): Make static.
        (sel_print): New function.

Modified:
    trunk/gcc/ChangeLog
    trunk/gcc/sel-sched-dump.c
    trunk/gcc/sel-sched-dump.h


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44426


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

* [Bug bootstrap/44426] [4.4/4.5/4.6 Regression] gcc 4.5.0 requires c9x compiler to build
  2010-06-05 14:24 [Bug bootstrap/44426] New: gcc 4.5.0 requires c9x compiler to build jay dot krell at cornell dot edu
                   ` (14 preceding siblings ...)
  2010-06-21 16:27 ` jakub at gcc dot gnu dot org
@ 2010-06-21 17:07 ` jakub at gcc dot gnu dot org
  2010-06-21 17:11 ` jakub at gcc dot gnu dot org
  2010-06-21 17:20 ` jakub at gcc dot gnu dot org
  17 siblings, 0 replies; 19+ messages in thread
From: jakub at gcc dot gnu dot org @ 2010-06-21 17:07 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #15 from jakub at gcc dot gnu dot org  2010-06-21 17:07 -------
Subject: Bug 44426

Author: jakub
Date: Mon Jun 21 17:06:48 2010
New Revision: 161100

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=161100
Log:
        PR bootstrap/44426
        * sel-sched-dump.h (sel_prepare_string_for_dot_label): Remove
        prototype.
        (sel_print_to_dot): Remove macro.
        (sel_print): Likewise.  New prototype.
        * sel-sched-dump.c (sel_prepare_string_for_dot_label): Make static.
        (sel_print): New function.

Modified:
    branches/gcc-4_5-branch/gcc/ChangeLog
    branches/gcc-4_5-branch/gcc/sel-sched-dump.c
    branches/gcc-4_5-branch/gcc/sel-sched-dump.h


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44426


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

* [Bug bootstrap/44426] [4.4/4.5/4.6 Regression] gcc 4.5.0 requires c9x compiler to build
  2010-06-05 14:24 [Bug bootstrap/44426] New: gcc 4.5.0 requires c9x compiler to build jay dot krell at cornell dot edu
                   ` (15 preceding siblings ...)
  2010-06-21 17:07 ` jakub at gcc dot gnu dot org
@ 2010-06-21 17:11 ` jakub at gcc dot gnu dot org
  2010-06-21 17:20 ` jakub at gcc dot gnu dot org
  17 siblings, 0 replies; 19+ messages in thread
From: jakub at gcc dot gnu dot org @ 2010-06-21 17:11 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #16 from jakub at gcc dot gnu dot org  2010-06-21 17:11 -------
Subject: Bug 44426

Author: jakub
Date: Mon Jun 21 17:10:02 2010
New Revision: 161102

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=161102
Log:
        PR bootstrap/44426
        * sel-sched-dump.h (sel_prepare_string_for_dot_label): Remove
        prototype.
        (sel_print_to_dot): Remove macro.
        (sel_print): Likewise.  New prototype.
        * sel-sched-dump.c (sel_prepare_string_for_dot_label): Make static.
        (sel_print): New function.

Modified:
    branches/gcc-4_4-branch/gcc/ChangeLog
    branches/gcc-4_4-branch/gcc/sel-sched-dump.c
    branches/gcc-4_4-branch/gcc/sel-sched-dump.h


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44426


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

* [Bug bootstrap/44426] [4.4/4.5/4.6 Regression] gcc 4.5.0 requires c9x compiler to build
  2010-06-05 14:24 [Bug bootstrap/44426] New: gcc 4.5.0 requires c9x compiler to build jay dot krell at cornell dot edu
                   ` (16 preceding siblings ...)
  2010-06-21 17:11 ` jakub at gcc dot gnu dot org
@ 2010-06-21 17:20 ` jakub at gcc dot gnu dot org
  17 siblings, 0 replies; 19+ messages in thread
From: jakub at gcc dot gnu dot org @ 2010-06-21 17:20 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #17 from jakub at gcc dot gnu dot org  2010-06-21 17:20 -------
Should be fixed now.


-- 

jakub at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |RESOLVED
         Resolution|                            |FIXED


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44426


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

end of thread, other threads:[~2010-06-21 17:20 UTC | newest]

Thread overview: 19+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2010-06-05 14:24 [Bug bootstrap/44426] New: gcc 4.5.0 requires c9x compiler to build jay dot krell at cornell dot edu
2010-06-05 14:54 ` [Bug bootstrap/44426] [4.5/4.6 Regression] " jsm28 at gcc dot gnu dot org
2010-06-05 15:14 ` jay dot krell at cornell dot edu
2010-06-05 15:51 ` manu at gcc dot gnu dot org
2010-06-05 17:37 ` joseph at codesourcery dot com
2010-06-05 17:40 ` [Bug bootstrap/44426] [4.4/4.5/4.6 " jsm28 at gcc dot gnu dot org
2010-06-05 17:52 ` rguenth at gcc dot gnu dot org
2010-06-05 19:05 ` manu at gcc dot gnu dot org
2010-06-05 19:10 ` rguenth at gcc dot gnu dot org
2010-06-05 19:39 ` manu at gcc dot gnu dot org
2010-06-05 21:33 ` joseph at codesourcery dot com
2010-06-14  8:55 ` jakub at gcc dot gnu dot org
2010-06-14 10:20 ` jakub at gcc dot gnu dot org
2010-06-14 15:54 ` jakub at gcc dot gnu dot org
2010-06-14 16:01 ` jakub at gcc dot gnu dot org
2010-06-21 16:27 ` jakub at gcc dot gnu dot org
2010-06-21 17:07 ` jakub at gcc dot gnu dot org
2010-06-21 17:11 ` jakub at gcc dot gnu dot org
2010-06-21 17:20 ` jakub at gcc dot gnu dot org

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).