public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug bootstrap/41436] New: [4.5 regression] option `param_is' may only be applied to structures or structure pointers
@ 2009-09-22 19:36 ro at gcc dot gnu dot org
2009-09-23 0:11 ` [Bug bootstrap/41436] [4.5 regression] Revision option 152018 caused " hjl dot tools at gmail dot com
` (7 more replies)
0 siblings, 8 replies; 9+ messages in thread
From: ro at gcc dot gnu dot org @ 2009-09-22 19:36 UTC (permalink / raw)
To: gcc-bugs
Between 20090915 (rev. 151722) and 20090922 (rev. 152032), mainline started to
fail bootstrap on Solaris 10/x86 in stage2 building s-gtype:
build/gengtype /vol/gcc/src/gcc-dist/gcc gtyp-input.list
/vol/gcc/src/gcc-dist/gcc/cgraph.c:94: option `param_is' may only be applied to
structures or structure pointers
/vol/gcc/src/gcc-dist/gcc/cgraph.c:96: option `param_is' may only be applied to
structures or structure pointers
/vol/gcc/src/gcc-dist/gcc/dwarf2out.c:414: option `param_is' may only be
applied to structures or structure pointers
/vol/gcc/src/gcc-dist/gcc/dwarf2out.c:5641: option `param_is' may only be
applied to structures or structure pointers
/vol/gcc/src/gcc-dist/gcc/dwarf2out.c:5645: option `param_is' may only be
applied to structures or structure pointers
/vol/gcc/src/gcc-dist/gcc/dwarf2out.c:5649: option `param_is' may only be
applied to structures or structure pointers
/vol/gcc/src/gcc-dist/gcc/dwarf2out.c:5682: option `param_is' may only be
applied to structures or structure pointers
/vol/gcc/src/gcc-dist/gcc/dwarf2asm.c:768: option `param2_is' may only be
applied to structures or structure pointers
/vol/gcc/src/gcc-dist/gcc/emit-rtl.c:156: option `param_is' may only be applied
to structures or structure pointers
/vol/gcc/src/gcc-dist/gcc/emit-rtl.c:160: option `param_is' may only be applied
to structures or structure pointers
/vol/gcc/src/gcc-dist/gcc/emit-rtl.c:164: option `param_is' may only be applied
to structures or structure pointers
/vol/gcc/src/gcc-dist/gcc/emit-rtl.c:168: option `param_is' may only be applied
to structures or structure pointers
/vol/gcc/src/gcc-dist/gcc/emit-rtl.c:172: option `param_is' may only be applied
to structures or structure pointers
/vol/gcc/src/gcc-dist/gcc/function.c:129: option `param_is' may only be applied
to structures or structure pointers
/vol/gcc/src/gcc-dist/gcc/function.c:131: option `param_is' may only be applied
to structures or structure pointers
/vol/gcc/src/gcc-dist/gcc/function.c:486: option `param_is' may only be applied
to structures or structure pointers
/vol/gcc/src/gcc-dist/gcc/except.c:161: option `param_is' may only be applied
to structures or structure pointers
/vol/gcc/src/gcc-dist/gcc/optabs.c:121: option `param_is' may only be applied
to structures or structure pointers
/vol/gcc/src/gcc-dist/gcc/optabs.c:6009: option `param_is' may only be applied
to structures or structure pointers
/vol/gcc/src/gcc-dist/gcc/tree.c:175: option `param_is' may only be applied to
structures or structure pointers
/vol/gcc/src/gcc-dist/gcc/tree.c:180: option `param_is' may only be applied to
structures or structure pointers
/vol/gcc/src/gcc-dist/gcc/tree.c:190: option `param_is' may only be applied to
structures or structure pointers
/vol/gcc/src/gcc-dist/gcc/tree.c:196: option `param_is' may only be applied to
structures or structure pointers
/vol/gcc/src/gcc-dist/gcc/tree.c:199: option `param_is' may only be applied to
structures or structure pointers
/vol/gcc/src/gcc-dist/gcc/tree.c:203: option `param_is' may only be applied to
structures or structure pointers
/vol/gcc/src/gcc-dist/gcc/varasm.c:180: option `param_is' may only be applied
to structures or structure pointers
/vol/gcc/src/gcc-dist/gcc/varasm.c:183: option `param_is' may only be applied
to structures or structure pointers
/vol/gcc/src/gcc-dist/gcc/varasm.c:194: option `param_is' may only be applied
to structures or structure pointers
/vol/gcc/src/gcc-dist/gcc/varasm.c:2787: option `param_is' may only be applied
to structures or structure pointers
/vol/gcc/src/gcc-dist/gcc/tree-mudflap.c:1212: option `param_is' may only be
applied to structures or structure pointers
/vol/gcc/src/gcc-dist/gcc/tree-scalar-evolution.c:310: option `param_is' may
only be applied to structures or structure pointers
/vol/gcc/src/gcc-dist/gcc/varpool.c:51: option `param_is' may only be applied
to structures or structure pointers
/vol/gcc/src/gcc-dist/gcc/omp-low.c:5880: option `param2_is' may only be
applied to structures or structure pointers
/vol/gcc/src/gcc-dist/gcc/config/i386/i386.c:10245: option `param_is' may only
be applied to structures or structure pointers
/vol/gcc/src/gcc-dist/gcc/ipa-reference.c:125: option `param2_is' may only be
applied to structures or structure pointers
/vol/gcc/src/gcc-dist/gcc/tree-ssa-structalias.c:164: option `param_is' may
only be applied to structures or structure pointers
/vol/gcc/src/gcc-dist/gcc/ada/gcc-interface/decl.c:114: option `param_is' may
only be applied to structures or structure pointers
/vol/gcc/src/gcc-dist/gcc/cp/mangle.c:3045: option `param_is' may only be
applied to structures or structure pointers
/vol/gcc/src/gcc-dist/gcc/cp/decl.c:2912: option `param_is' may only be applied
to structures or structure pointers
/vol/gcc/src/gcc-dist/gcc/cp/pt.c:93: option `param_is' may only be applied to
structures or structure pointers
/vol/gcc/src/gcc-dist/gcc/cp/pt.c:96: option `param_is' may only be applied to
structures or structure pointers
/vol/gcc/src/gcc-dist/gcc/cp/tree.c:590: option `param_is' may only be applied
to structures or structure pointers
/vol/gcc/src/gcc-dist/gcc/cp/tree.c:1120: option `param_is' may only be applied
to structures or structure pointers
/vol/gcc/src/gcc-dist/gcc/cp/typeck2.c:162: option `param_is' may only be
applied to structures or structure pointers
/vol/gcc/src/gcc-dist/gcc/c-common.c:4141: option `param_is' may only be
applied to structures or structure pointers
/vol/gcc/src/gcc-dist/gcc/c-pragma.c:257: option `param_is' may only be applied
to structures or structure pointers
/vol/gcc/src/gcc-dist/gcc/cp/cp-objcp-common.c:220: option `param_is' may only
be applied to structures or structure pointers
/vol/gcc/src/gcc-dist/gcc/fortran/trans-decl.c:3215: option `param_is' may only
be applied to structures or structure pointers
/vol/gcc/src/gcc-dist/gcc/objc/objc-act.c:402: option `param_is' may only be
applied to structures or structure pointers
/vol/gcc/src/gcc-dist/gcc/objc/objc-act.c:409: option `param_is' may only be
applied to structures or structure pointers
/vol/gcc/src/gcc-dist/gcc/objc/objc-act.c:3345: option `param_is' may only be
applied to structures or structure pointers
make: *** [s-gtype] Error 1
--
Summary: [4.5 regression] option `param_is' may only be applied
to structures or structure pointers
Product: gcc
Version: 4.5.0
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: bootstrap
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: ro at gcc dot gnu dot org
GCC build triplet: i386-pc-solaris2.10
GCC host triplet: i386-pc-solaris2.10
GCC target triplet: i386-pc-solaris2.10
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=41436
^ permalink raw reply [flat|nested] 9+ messages in thread
* [Bug bootstrap/41436] [4.5 regression] Revision option 152018 caused `param_is' may only be applied to structures or structure pointers
2009-09-22 19:36 [Bug bootstrap/41436] New: [4.5 regression] option `param_is' may only be applied to structures or structure pointers ro at gcc dot gnu dot org
@ 2009-09-23 0:11 ` hjl dot tools at gmail dot com
2009-09-23 8:34 ` [Bug bootstrap/41436] [4.5 regression] Revision 152018 failed to bootstrap on i386 rguenth at gcc dot gnu dot org
` (6 subsequent siblings)
7 siblings, 0 replies; 9+ messages in thread
From: hjl dot tools at gmail dot com @ 2009-09-23 0:11 UTC (permalink / raw)
To: gcc-bugs
------- Comment #1 from hjl dot tools at gmail dot com 2009-09-23 00:11 -------
It is caused by revision 152018:
http://gcc.gnu.org/ml/gcc-cvs/2009-09/msg00767.html
I also saw on Linux/ia32, but not Linux/x86-64.
--
hjl dot tools at gmail dot com changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |rth at gcc dot gnu dot org
Status|UNCONFIRMED |NEW
Ever Confirmed|0 |1
GCC build triplet|i386-pc-solaris2.10 |
GCC host triplet|i386-pc-solaris2.10 |
GCC target triplet|i386-pc-solaris2.10 |i386
Last reconfirmed|0000-00-00 00:00:00 |2009-09-23 00:11:09
date| |
Summary|[4.5 regression] option |[4.5 regression] Revision
|`param_is' may only be |option 152018 caused
|applied to structures or |`param_is' may only be
|structure pointers |applied to structures or
| |structure pointers
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=41436
^ permalink raw reply [flat|nested] 9+ messages in thread
* [Bug bootstrap/41436] [4.5 regression] Revision 152018 failed to bootstrap on i386
2009-09-22 19:36 [Bug bootstrap/41436] New: [4.5 regression] option `param_is' may only be applied to structures or structure pointers ro at gcc dot gnu dot org
2009-09-23 0:11 ` [Bug bootstrap/41436] [4.5 regression] Revision option 152018 caused " hjl dot tools at gmail dot com
@ 2009-09-23 8:34 ` rguenth at gcc dot gnu dot org
2009-09-23 9:56 ` jakub at gcc dot gnu dot org
` (5 subsequent siblings)
7 siblings, 0 replies; 9+ messages in thread
From: rguenth at gcc dot gnu dot org @ 2009-09-23 8:34 UTC (permalink / raw)
To: gcc-bugs
--
rguenth at gcc dot gnu dot org changed:
What |Removed |Added
----------------------------------------------------------------------------
Priority|P3 |P1
Target Milestone|--- |4.5.0
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=41436
^ permalink raw reply [flat|nested] 9+ messages in thread
* [Bug bootstrap/41436] [4.5 regression] Revision 152018 failed to bootstrap on i386
2009-09-22 19:36 [Bug bootstrap/41436] New: [4.5 regression] option `param_is' may only be applied to structures or structure pointers ro at gcc dot gnu dot org
2009-09-23 0:11 ` [Bug bootstrap/41436] [4.5 regression] Revision option 152018 caused " hjl dot tools at gmail dot com
2009-09-23 8:34 ` [Bug bootstrap/41436] [4.5 regression] Revision 152018 failed to bootstrap on i386 rguenth at gcc dot gnu dot org
@ 2009-09-23 9:56 ` jakub at gcc dot gnu dot org
2009-09-23 10:41 ` jakub at gcc dot gnu dot org
` (4 subsequent siblings)
7 siblings, 0 replies; 9+ messages in thread
From: jakub at gcc dot gnu dot org @ 2009-09-23 9:56 UTC (permalink / raw)
To: gcc-bugs
------- Comment #2 from jakub at gcc dot gnu dot org 2009-09-23 09:55 -------
It is gengtype-parse.c that matters, if all of gengtype except this file is
compiled with r152018 and this file with r152017, it works.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=41436
^ permalink raw reply [flat|nested] 9+ messages in thread
* [Bug bootstrap/41436] [4.5 regression] Revision 152018 failed to bootstrap on i386
2009-09-22 19:36 [Bug bootstrap/41436] New: [4.5 regression] option `param_is' may only be applied to structures or structure pointers ro at gcc dot gnu dot org
` (2 preceding siblings ...)
2009-09-23 9:56 ` jakub at gcc dot gnu dot org
@ 2009-09-23 10:41 ` jakub at gcc dot gnu dot org
2009-09-23 11:26 ` jakub at gcc dot gnu dot org
` (3 subsequent siblings)
7 siblings, 0 replies; 9+ messages in thread
From: jakub at gcc dot gnu dot org @ 2009-09-23 10:41 UTC (permalink / raw)
To: gcc-bugs
------- Comment #3 from jakub at gcc dot gnu dot org 2009-09-23 10:41 -------
r152018 seems to change generated code even on:
/* { dg-options "-O2 -m32 -fno-inline -mtune=generic" } */
struct S
{
const char *s1;
int s2;
char s3;
};
static struct S s;
static inline const char *
bar (void)
{
s.s3 = 0;
return s.s1;
}
const char *
foo (void)
{
return bar ();
}
In bar %esi is saved, even when clearly no nested functions are involved.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=41436
^ permalink raw reply [flat|nested] 9+ messages in thread
* [Bug bootstrap/41436] [4.5 regression] Revision 152018 failed to bootstrap on i386
2009-09-22 19:36 [Bug bootstrap/41436] New: [4.5 regression] option `param_is' may only be applied to structures or structure pointers ro at gcc dot gnu dot org
` (3 preceding siblings ...)
2009-09-23 10:41 ` jakub at gcc dot gnu dot org
@ 2009-09-23 11:26 ` jakub at gcc dot gnu dot org
2009-09-23 11:50 ` jakub at gcc dot gnu dot org
` (2 subsequent siblings)
7 siblings, 0 replies; 9+ messages in thread
From: jakub at gcc dot gnu dot org @ 2009-09-23 11:26 UTC (permalink / raw)
To: gcc-bugs
------- Comment #4 from jakub at gcc dot gnu dot org 2009-09-23 11:26 -------
Ah, the problem is that targetm.calls.static_chain is called even on function
decls which have decl_function_context (fndecl) == NULL, and those have
undefined the DECL_NO_STATIC_CHAIN bit, as tree-nested.c only sets it when
actually doing something.
So, either we could set DECL_NO_STATIC_CHAIN in tree-nested.c for functions
which are not nested, or static_chain hooks should also return NULL immediately
if a function isn't nested, or at least i386 hook shouldn't change the calling
convention of the function if it isn't nested.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=41436
^ permalink raw reply [flat|nested] 9+ messages in thread
* [Bug bootstrap/41436] [4.5 regression] Revision 152018 failed to bootstrap on i386
2009-09-22 19:36 [Bug bootstrap/41436] New: [4.5 regression] option `param_is' may only be applied to structures or structure pointers ro at gcc dot gnu dot org
` (4 preceding siblings ...)
2009-09-23 11:26 ` jakub at gcc dot gnu dot org
@ 2009-09-23 11:50 ` jakub at gcc dot gnu dot org
2009-09-23 13:06 ` jakub at gcc dot gnu dot org
2009-09-23 13:14 ` jakub at gcc dot gnu dot org
7 siblings, 0 replies; 9+ messages in thread
From: jakub at gcc dot gnu dot org @ 2009-09-23 11:50 UTC (permalink / raw)
To: gcc-bugs
------- Comment #5 from jakub at gcc dot gnu dot org 2009-09-23 11:50 -------
Created an attachment (id=18635)
--> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=18635&action=view)
gcc45-pr41436.patch
Patch I'm bootstrapping/regtesting ATM.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=41436
^ permalink raw reply [flat|nested] 9+ messages in thread
* [Bug bootstrap/41436] [4.5 regression] Revision 152018 failed to bootstrap on i386
2009-09-22 19:36 [Bug bootstrap/41436] New: [4.5 regression] option `param_is' may only be applied to structures or structure pointers ro at gcc dot gnu dot org
` (5 preceding siblings ...)
2009-09-23 11:50 ` jakub at gcc dot gnu dot org
@ 2009-09-23 13:06 ` jakub at gcc dot gnu dot org
2009-09-23 13:14 ` jakub at gcc dot gnu dot org
7 siblings, 0 replies; 9+ messages in thread
From: jakub at gcc dot gnu dot org @ 2009-09-23 13:06 UTC (permalink / raw)
To: gcc-bugs
------- Comment #6 from jakub at gcc dot gnu dot org 2009-09-23 13:06 -------
Subject: Bug 41436
Author: jakub
Date: Wed Sep 23 13:06:20 2009
New Revision: 152067
URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=152067
Log:
PR bootstrap/41436
* cgraphunit.c (cgraph_lower_function): Set DECL_NO_STATIC_CHAIN
on non-nested functions.
Modified:
trunk/gcc/ChangeLog
trunk/gcc/cgraphunit.c
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=41436
^ permalink raw reply [flat|nested] 9+ messages in thread
* [Bug bootstrap/41436] [4.5 regression] Revision 152018 failed to bootstrap on i386
2009-09-22 19:36 [Bug bootstrap/41436] New: [4.5 regression] option `param_is' may only be applied to structures or structure pointers ro at gcc dot gnu dot org
` (6 preceding siblings ...)
2009-09-23 13:06 ` jakub at gcc dot gnu dot org
@ 2009-09-23 13:14 ` jakub at gcc dot gnu dot org
7 siblings, 0 replies; 9+ messages in thread
From: jakub at gcc dot gnu dot org @ 2009-09-23 13:14 UTC (permalink / raw)
To: gcc-bugs
------- Comment #7 from jakub at gcc dot gnu dot org 2009-09-23 13:14 -------
Fixed.
--
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=41436
^ permalink raw reply [flat|nested] 9+ messages in thread
end of thread, other threads:[~2009-09-23 13:14 UTC | newest]
Thread overview: 9+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2009-09-22 19:36 [Bug bootstrap/41436] New: [4.5 regression] option `param_is' may only be applied to structures or structure pointers ro at gcc dot gnu dot org
2009-09-23 0:11 ` [Bug bootstrap/41436] [4.5 regression] Revision option 152018 caused " hjl dot tools at gmail dot com
2009-09-23 8:34 ` [Bug bootstrap/41436] [4.5 regression] Revision 152018 failed to bootstrap on i386 rguenth at gcc dot gnu dot org
2009-09-23 9:56 ` jakub at gcc dot gnu dot org
2009-09-23 10:41 ` jakub at gcc dot gnu dot org
2009-09-23 11:26 ` jakub at gcc dot gnu dot org
2009-09-23 11:50 ` jakub at gcc dot gnu dot org
2009-09-23 13:06 ` jakub at gcc dot gnu dot org
2009-09-23 13:14 ` 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).