[Bug plugins/46042] New: install-plugin rule exceeds argument line length on a host with argument list limitations

2010-10-16 Thread gary at intrepid dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46042

   Summary: install-plugin rule exceeds argument line length on a
host with argument list limitations
   Product: gcc
   Version: 4.5.1
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: plugins
AssignedTo: unassig...@gcc.gnu.org
ReportedBy: g...@intrepid.com


Created attachment 22059
  -- http://gcc.gnu.org/bugzilla/attachment.cgi?id=22059
patch: work-around command line limit for install-plugin rule

'make install' failed on an old SGI/IRIX/MIPS box.  The install-plugin rule
tried to create a shell variable from the value of the $(PLUGIN_HEADERS) make
variable, and this produced a command line that was too much for the OS to
handle.

The attached patch, diff'ed against the 4.5 branch, implements a work-around. 
Tested both on the SGI/IRIX box, and x86_64 Linux.

This issue is present in the main line/trunk as well.


[Bug c/46041] __FP_FAST_FMA not defined with -E

2010-10-16 Thread rguenth at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46041

--- Comment #4 from Richard Guenther rguenth at gcc dot gnu.org 2010-10-16 
09:43:25 UTC ---
Hm, the question is if it is a good idea anyway given the target and
optimization
attributes.


[Bug bootstrap/46037] --enable-stage1-languages=c,lto --enable-languages=c,lto --with-build-config=bootstrap-lto fails on darwin

2010-10-16 Thread rguenth at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46037

--- Comment #2 from Richard Guenther rguenth at gcc dot gnu.org 2010-10-16 
09:46:38 UTC ---
the optimize attribute isn't used in the preprocessed file but only the
target attribute which is supported.  Thus, worksforme.


[Bug lto/44950] ICE in dwarf2out_finish, at dwarf2out.c:22271

2010-10-16 Thread rguenth at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44950

--- Comment #9 from Richard Guenther rguenth at gcc dot gnu.org 2010-10-16 
10:03:59 UTC ---
Hmhm, difficult.  We're ending up with LANG_TYPE again in dealII, will add
a testcase for that.


[Bug c++/46043] New: attribute to mark virtual methods that can't be further overriden so they can be devirtualized

2010-10-16 Thread zsojka at seznam dot cz
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46043

   Summary: attribute to mark virtual methods that can't be
further overriden so they can be devirtualized
   Product: gcc
   Version: 4.6.0
Status: UNCONFIRMED
  Severity: enhancement
  Priority: P3
 Component: c++
AssignedTo: unassig...@gcc.gnu.org
ReportedBy: zso...@seznam.cz


In some scenarios, there is one abstract class declaring virtual methods with
several derived classes, all of them overriding those methods. (at least in
OpenTTD that happens often) The important point is that there are no further
derived classes from those. For example:

struct A {
  virtual void f1() = 0;
  virtual void f2() = 0;
  virtual void f3() { ... this-f1(); this-f2(); ... }
};

struct B : A {
  virtual void f1();
  virtual void f2() { ... this-f1(); ... }
};

struct C : A {
  virtual void f1();
  virtual void f2();
  virtual void f3() { ... this-f1(); this-f2(); ... }
};

struct D : A {
  virtual void f1();
  virtual void f2();
};

If there was an information that there are no classes derived from B,C,D, it
would allow many devirtualizations.
One idea I could come with would be omitting the virtual keyword causing the
method to lose its virtual status. But that would break a lot of existing
code.
Second idea is using an attribute for that. While searching for this issue I
found java uses final keyword for this purpose (or at least it seems to me
so), so I will use attribute final in the following example:

struct A {
virtual void f1();
virtual void f2();
virtual void f3();
};

/* f1() can't be further overriden */
struct B : A {
virtual void f1() __attribute__((final));
};

/* no virtual method can further be overriden */
struct C : A {
virtual void f3();
} __attribute__((final));

struct D : C {
virtual void f4();
};

struct E : D {
} __attribute__((final));

void foo(struct C *c, struct D *d, struct E *e)
{
c-f1(); /* c-B::f1() */
c-f2(); /* c-A::f2() */
c-f3(); /* c-C::f3() */
d-f1(); /* d-B::f1() */
d-f4(); /* not known at compile-time */
e-f1(); /* e-B::f1() */
e-f4(); /* e-D::f4() */
}

/* The following results in compile errors */
struct F : D {
virtual void f1(); /* error */
virtual void f2(); /* error */
virtual void f3(); /* error */
virtual void f4();
};

I searched the bugzilla for this issue and found none open. Given this idea is
quite simple and the gain can be high, there might be something I overlooked.


[Bug c/46044] New: ICE in get_attr_first_insn on ia64 Itanium

2010-10-16 Thread jdemeyer at cage dot ugent.be
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46044

   Summary: ICE in get_attr_first_insn on ia64 Itanium
   Product: gcc
   Version: 4.5.1
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: c
AssignedTo: unassig...@gcc.gnu.org
ReportedBy: jdeme...@cage.ugent.be


On a Red Hat Enterprise Linux 5 system on Intel Itanium 2 processors:

$ uname -a
Linux cleo 2.6.18-128.1.1.el5 #1 SMP Mon Jan 26 13:57:09 EST 2009 ia64 ia64
ia64 GNU/Linux

$ gcc -v -O3 krasner.i -c -o krasner.o
Using built-in specs.
COLLECT_GCC=gcc
COLLECT_LTO_WRAPPER=/usr/local/gcc-4.5.1/ia64-Linux-rhel/libexec/gcc/ia64-unknown-linux-gnu/4.5.1/lto-wrapper
Target: ia64-unknown-linux-gnu
Configured with: /usr/local/gcc-4.5.1/src/gcc-4.5.1/configure
--enable-languages=c,c++,fortran --with-gnu-as
--with-as=/usr/local/binutils-2.20.1/ia64-Linux-rhel-gcc-4.4.3/bin/as
--with-gnu-ld
--with-ld=/usr/local/binutils-2.20.1/ia64-Linux-rhel-gcc-4.4.3/bin/ld
--with-gmp=/usr/local/gmp-5.0.1/ia64-Linux-rhel-gcc-4.5.0
--with-mpfr=/usr/local/mpfr-3.0.0/ia64-Linux-rhel-gmp-5.0.1-gcc-4.5.0
--with-mpc=/usr/local/mpc-0.8.2/ia64-Linux-rhel-mpfr-3.0.0-gmp-5.0.1-gcc-4.5.0
--prefix=/usr/local/gcc-4.5.1/ia64-Linux-rhel
Thread model: posix
gcc version 4.5.1 (GCC)
COLLECT_GCC_OPTIONS='-v' '-O3' '-c' '-o' 'krasner.o'

/usr/local/gcc-4.5.1/ia64-Linux-rhel/libexec/gcc/ia64-unknown-linux-gnu/4.5.1/cc1
-fpreprocessed krasner.i -quiet -dumpbase krasner.i -auxbase-strip krasner.o
-O3 -version -o /tmp/ccf8q5Rb.s
GNU C (GCC) version 4.5.1 (ia64-unknown-linux-gnu)
compiled by GNU C version 4.5.1, GMP version 5.0.1, MPFR version 3.0.0,
MPC version 0.8.2
GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072
GNU C (GCC) version 4.5.1 (ia64-unknown-linux-gnu)
compiled by GNU C version 4.5.1, GMP version 5.0.1, MPFR version 3.0.0,
MPC version 0.8.2
GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072
Compiler executable checksum: ffd8a52aa8a650053718419da68f7db2
krasner.i: In function krasner:
krasner.i:30:1: error: unrecognizable insn:
(insn:TI 259 278 279 18 (parallel [
(set (reg:DI 14 r14 [orig:411 n1 ] [411])
(asm_operands:DI () (=r) 0 [
(reg/v:DI 32 r34 [orig:395 i ] [395])
(reg:SI 15 r15 [413])
]
 [
(asm_input:DI (r) (null):0)
(asm_input:SI (r) (null):0)
]
 [] krasner.i:30))
(set (reg:DI 32 r34 [orig:412 n0 ] [412])
(asm_operands:DI () (=r) 1 [
(reg/v:DI 32 r34 [orig:395 i ] [395])
(reg:SI 15 r15 [413])
]
 [
(asm_input:DI (r) (null):0)
(asm_input:SI (r) (null):0)
]
 [] krasner.i:30))
]) -1 (nil))
krasner.i:30:1: internal compiler error: in get_attr_first_insn, at
config/ia64/itanium2.md:1909
Please submit a full bug report,
with preprocessed source if appropriate.
See http://gcc.gnu.org/bugs.html for instructions.


[Bug c/46044] ICE in get_attr_first_insn on ia64 Itanium

2010-10-16 Thread jdemeyer at cage dot ugent.be
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46044

--- Comment #1 from Jeroen Demeyer jdemeyer at cage dot ugent.be 2010-10-16 
12:33:34 UTC ---
Created attachment 22060
  -- http://gcc.gnu.org/bugzilla/attachment.cgi?id=22060
testcase


[Bug web/45782] When updating a bug, an error can be thrown if an email cannot be sent to a recipient

2010-10-16 Thread LpSolit at netscape dot net
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=45782

Frédéric Buclin LpSolit at netscape dot net changed:

   What|Removed |Added

Summary|bugzilla internal error |When updating a bug, an
   |trying to update existing   |error can be thrown if an
   |PR  |email cannot be sent to a
   ||recipient

--- Comment #3 from Frédéric Buclin LpSolit at netscape dot net 2010-10-16 
13:01:43 UTC ---
(In reply to comment #2)
 Looks like the move from
 Qmail to SMTP is blocked for this recipient for some reason.

This problem has been fixed. It was a permission issue (the sender was
blacklisted, IIRC). The root cause is still not fixed, though, see the URL in
the See Also field.


[Bug web/45785] Bugzilla search sometimes fails with an internal error

2010-10-16 Thread LpSolit at netscape dot net
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=45785

--- Comment #2 from Frédéric Buclin LpSolit at netscape dot net 2010-10-16 
13:04:59 UTC ---
Is it still an issue?


[Bug web/45811] bugzilla: editing search loses host/target/build

2010-10-16 Thread LpSolit at netscape dot net
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=45811

Frédéric Buclin LpSolit at netscape dot net changed:

   What|Removed |Added

 Status|NEW |WAITING

--- Comment #3 from Frédéric Buclin LpSolit at netscape dot net 2010-10-16 
13:11:20 UTC ---
The upstream bug has been fixed. The fix will be ported to GCC Bugzilla next
time we upgrade.


[Bug web/45904] Email addresses used by Bugzilla

2010-10-16 Thread LpSolit at netscape dot net
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=45904

Frédéric Buclin LpSolit at netscape dot net changed:

   What|Removed |Added

 Status|UNCONFIRMED |RESOLVED
 Resolution||FIXED
 AssignedTo|unassigned at gcc dot   |fche at redhat dot com
   |gnu.org |

--- Comment #5 from Frédéric Buclin LpSolit at netscape dot net 2010-10-16 
13:13:02 UTC ---
Unless I miss something, this bug is fixed, per comment 1.


[Bug web/45785] Bugzilla search sometimes fails with an internal error

2010-10-16 Thread zsojka at seznam dot cz
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=45785

--- Comment #3 from Zdenek Sojka zsojka at seznam dot cz 2010-10-16 13:17:14 
UTC ---
I get the feeling search isn't as quick as it used to be, but it's just a
feeling without any data to support it.
However, I haven't seen a search failure for some time now.


[Bug c/46045] New: incorrect code generated if redecalring local variable in do-while(0)

2010-10-16 Thread mbuilov at gmail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46045

   Summary: incorrect code generated if redecalring local variable
in do-while(0)
   Product: gcc
   Version: 4.5.1
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: c
AssignedTo: unassig...@gcc.gnu.org
ReportedBy: mbui...@gmail.com


following program gives incorrect results if compiled with -O0 and crashes if
compiled with -O2

$cat test.c

struct A
{
int k;
};

static int *foo(struct A *a)
{
do {
struct A *a = a;
return a-k;
} while (0);
}

int main(int argc, char *argv[])
{
struct A a = {1};
return *foo(a);
}

$gcc -O0 test.c  ./a.out ; echo $?
72

$gcc -O2 test.c  ./a.out ; echo $?
Segmentation fault
139

Renaming local variable in do-while fixes the problem:
struct A *a = a;
return a-k;
---
struct A *b = a;
return b-k;

$gcc -O0 test.c  ./a.out ; echo $?
1

$gcc -O2 test.c  ./a.out ; echo $?
1


[Bug c/46045] incorrect code generated if redecalring local variable in do-while(0)

2010-10-16 Thread zsojka at seznam dot cz
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46045

Zdenek Sojka zsojka at seznam dot cz changed:

   What|Removed |Added

 CC||zsojka at seznam dot cz

--- Comment #1 from Zdenek Sojka zsojka at seznam dot cz 2010-10-16 13:31:58 
UTC ---
 struct A *a = a;

Refers to the just declared variable, thus the variable is initialised by
itself.

$ gcc-4.6.0-pre test.c -Wall -W -Wshadow -Winit-self
test.c: In function 'foo':
test.c:9:27: warning: declaration of 'a' shadows a parameter [-Wshadow]
test.c:6:27: warning: shadowed declaration is here [-Wshadow]
test.c:6:27: warning: unused parameter 'a' [-Wunused-parameter]
test.c: In function 'main':
test.c:14:14: warning: unused parameter 'argc' [-Wunused-parameter]
test.c:14:26: warning: unused parameter 'argv' [-Wunused-parameter]
test.c: In function 'foo':
test.c:9:27: warning: 'a' is used uninitialized in this function
[-Wuninitialized]

You get the warning with -Winit-self -Wuninitialized


[Bug libstdc++/42734] trivial use of std::thread fails with pure virtual method called

2010-10-16 Thread redi at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=42734

--- Comment #37 from Jonathan Wakely redi at gcc dot gnu.org 2010-10-16 
13:31:33 UTC ---

What I was thinking of is that bits/c++config.h defines the following based on
what was supported at the time the library is configured and built, not what is
supported later when users compile:

/* Define if builtin atomic operations for bool are supported on this host. */
#define _GLIBCXX_ATOMIC_BUILTINS_1 1

But I don't think thread depends on that. future and atomic do.


[Bug bootstrap/46037] --enable-stage1-languages=c,lto --enable-languages=c,lto --with-build-config=bootstrap-lto fails on darwin

2010-10-16 Thread howarth at nitro dot med.uc.edu
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46037

--- Comment #3 from Jack Howarth howarth at nitro dot med.uc.edu 2010-10-16 
13:41:03 UTC ---
(In reply to comment #2)
 the optimize attribute isn't used in the preprocessed file but only the
 target attribute which is supported.  Thus, worksforme.

Using a stock build of gcc trunk on x86_64-apple-darwin10, built with...

Using built-in specs.
COLLECT_GCC=gcc-4
COLLECT_LTO_WRAPPER=/sw/lib/gcc4.6/libexec/gcc/x86_64-apple-darwin10.5.0/4.6.0/lto-wrapper
Target: x86_64-apple-darwin10.5.0
Configured with: ../gcc-4.6-20101014/configure --prefix=/sw
--prefix=/sw/lib/gcc4.6 --mandir=/sw/share/man --infodir=/sw/lib/gcc4.6/info
--enable-languages=c,c++,fortran,objc,obj-c++,java,lto --with-gmp=/sw
--with-libiconv-prefix=/sw --with-ppl=/sw --with-cloog=/sw --with-mpc=/sw
--with-system-zlib --x-includes=/usr/X11R6/include --x-libraries=/usr/X11R6/lib
--program-suffix=-fsf-4.6 --enable-checking=yes
Thread model: posix
gcc version 4.6.0 20101015 (experimental) (GCC) 

the error can be reproduced out of tree with the lex.i file as...

gcc-4 -g -O2 -W -Wall -Wwrite-strings -Wmissing-format-attribute
-Wstrict-prototypes -Wmissing-prototypes -Wold-style-definition -Wc++-compat
-pedantic -Wno-long-long -Werror -flto -c -o lex.o -MT ex.o -MMD -MP -MF
.deps/lex.Tpo lex.i
../../gcc-4.6-20101014/libcpp/lex.c:2838:1: sorry, unimplemented: gimple
bytecode streams do not support the optimization attribute

It would be interesting to know if COFF's lto support has the same issues
(since they share the same backend design for lto support).


[Bug c++/46046] New: internal compiler error with SFINAE expression in a template inside a template

2010-10-16 Thread gcc at r9e dot de
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46046

   Summary: internal compiler error with SFINAE expression in a
template inside a template
   Product: gcc
   Version: 4.6.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: c++
AssignedTo: unassig...@gcc.gnu.org
ReportedBy: g...@r9e.de


Created attachment 22061
  -- http://gcc.gnu.org/bugzilla/attachment.cgi?id=22061
Sample code to trigger the segfault

When compiling the given sample code g++ produces the following error message:

# g++ sample.cpp 
sample.cpp: In function ‘int main()’:
sample.cpp:23:22: internal compiler error: tree check: expected tree_vec, have
error_mark in add_to_template_args, at cp/pt.c:496
Please submit a full bug report,
with preprocessed source if appropriate.
See http://gcc.gnu.org/bugs.html for instructions.

I'm not absolutely sure if it is valid c++, but even if it is not, the compiler
should not produce this error

I have reproduced this with gcc 4.5.1 and trunk compiled on a Ubuntu 10.04
amd64 and configured using:

CFLAGS=-m64 -g -O2 ../gcc-trunk/configure --enable-languages=c,c++
--disable-multilib

gcc 4.5.1 did not print the error message above, but segfaulted:

# g++ sample.cpp 
sample.cpp: In function ‘int main()’:
sample.cpp:23:22: internal compiler error: Segmentation fault
Please submit a full bug report,
with preprocessed source if appropriate.
See http://gcc.gnu.org/bugs.html for instructions.

The gcc 4.4.3 distributed by Ubuntu segfaulted, too, but I did not compile a
vanilla gcc 4.4.


[Bug c++/46043] attribute to mark virtual methods that can't be further overriden so they can be devirtualized

2010-10-16 Thread redi at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46043

--- Comment #1 from Jonathan Wakely redi at gcc dot gnu.org 2010-10-16 
14:01:25 UTC ---
(In reply to comment #0)
 One idea I could come with would be omitting the virtual keyword causing the
 method to lose its virtual status. But that would break a lot of existing
 code.

This is not acceptable.

The idea is useful in general though.  You should read
http://www.open-std.org/JTC1/SC22/WG21/docs/papers/2009/n2928.htm for related
features in C++0x


[Bug c++/46047] New: Lambda expressions: access to member functions

2010-10-16 Thread mikhail_semenov at hotmail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46047

   Summary: Lambda expressions: access to member functions
   Product: gcc
   Version: 4.5.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: c++
AssignedTo: unassig...@gcc.gnu.org
ReportedBy: mikhail_seme...@hotmail.com


According to the latest C++0x draft (n3126), 'this' is not required in front of
the member variable 'f' (there are a few examples on this issue in the draft).
As far as I understand, the same should apply to a member function. In GCC
4.5.0, the use of inc(n) without   the prefix this- causes an error.

struct S10 
{
int f;
double p;
void inc(int a) { a += f;}
void work(int n) 
{
int m = n*n;
int j = 40;
f = 10;
p =3.7;
auto m3 = [this,n]() mutable - int
{
p++;
f++;   
inc(n); //this- required in 4.5.0   
return n;
};
cout  S9 m3():  m3()  endl;
cout  f:  f   p:  p   n:  n  endl;
}
};


[Bug c++/46048] New: lambda: access to a member function

2010-10-16 Thread mikhail_semenov at hotmail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46048

   Summary: lambda: access to a member function
   Product: gcc
   Version: 4.5.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: c++
AssignedTo: unassig...@gcc.gnu.org
ReportedBy: mikhail_seme...@hotmail.com


In GCC 4.5.0 the follwing class fails to compile. In C++0x draft n3126, the
member variable 'f' does not require 'this-'. Surely the same should apply to
a member function.

struct S10 
{
int f;
double p;
void inc(int a) { a += f;}
void work(int n) 
{
int m = n*n;
int j = 40;
f = 10;
p =3.7;
auto m3 = [this,n]() mutable - int
{
p++;
f++;   
this-inc(n); //required
return n;
};
cout  S9 m3():  m3()  endl;
cout  f:  f   p:  p   n:  n  endl;
}
};


[Bug c++/46048] lambda: access to a member function

2010-10-16 Thread mikhail_semenov at hotmail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46048

--- Comment #1 from Mikhail Semenov mikhail_semenov at hotmail dot com 
2010-10-16 15:03:36 UTC ---
The code fails to compile is this-inc(n); is replaced with inc(n);


[Bug tree-optimization/46049] New: [4.6 Regression] ICE: in expand_widen_pattern_expr, at optabs.c:522 with -ftree-vectorize

2010-10-16 Thread zsojka at seznam dot cz
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46049

   Summary: [4.6 Regression] ICE: in expand_widen_pattern_expr, at
optabs.c:522 with -ftree-vectorize
   Product: gcc
   Version: 4.6.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: tree-optimization
AssignedTo: unassig...@gcc.gnu.org
ReportedBy: zso...@seznam.cz


Created attachment 22062
  -- http://gcc.gnu.org/bugzilla/attachment.cgi?id=22062
reduced testcase

The testcase crashes with two different ICEs, depending on supplied flags.

ICE 1:
$ gcc -O -ftree-vectorize pr46049.c  
pr46049.c: In function 'foo':
pr46049.c:9:6: internal compiler error: in expand_widen_pattern_expr, at
optabs.c:522
Please submit a full bug report,
with preprocessed source if appropriate.
See http://gcc.gnu.org/bugs.html for instructions.

ICE 2:
$ gcc -O -ftree-vectorize -ftree-pre pr46049.c 
pr46049.c: In function 'foo':
pr46049.c:18:1: error: unrecognizable insn:
(insn 62 61 63 6 (set (reg:V4SI 158)
(vec_merge:V4SI (vec_duplicate:V4SI (reg/v:HI 152 [ x ]))
(const_vector:V4SI [
(const_int 0 [0])
(const_int 0 [0])
(const_int 0 [0])
(const_int 0 [0])
])
(const_int 1 [0x1]))) pr46049.c:11 -1
 (nil))
pr46049.c:18:1: internal compiler error: in extract_insn, at recog.c:2110
Please submit a full bug report,
with preprocessed source if appropriate.
See http://gcc.gnu.org/bugs.html for instructions.

Tested versions:
r165540 - crash (with PR45352 fix, but that affects only haifa scheduler)
r163636 - OK


[Bug c++/46047] Lambda expressions: access to member functions

2010-10-16 Thread redi at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46047

Jonathan Wakely redi at gcc dot gnu.org changed:

   What|Removed |Added

 Status|UNCONFIRMED |RESOLVED
 Resolution||FIXED

--- Comment #1 from Jonathan Wakely redi at gcc dot gnu.org 2010-10-16 
15:24:26 UTC ---
compiles without error in 4.5.2 and 4.6.0 (once the necessary iostream and
using directive are added)


[Bug c++/46047] Lambda expressions: access to member functions

2010-10-16 Thread redi at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46047

--- Comment #2 from Jonathan Wakely redi at gcc dot gnu.org 2010-10-16 
15:26:29 UTC ---
*** Bug 46048 has been marked as a duplicate of this bug. ***


[Bug c++/46048] lambda: access to a member function

2010-10-16 Thread redi at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46048

Jonathan Wakely redi at gcc dot gnu.org changed:

   What|Removed |Added

 Status|UNCONFIRMED |RESOLVED
 Resolution||DUPLICATE

--- Comment #2 from Jonathan Wakely redi at gcc dot gnu.org 2010-10-16 
15:26:28 UTC ---
dup

*** This bug has been marked as a duplicate of bug 46047 ***


[Bug c++/46046] internal compiler error with SFINAE expression in a template inside a template

2010-10-16 Thread redi at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46046

Jonathan Wakely redi at gcc dot gnu.org changed:

   What|Removed |Added

   Keywords||ice-on-invalid-code
 Status|UNCONFIRMED |NEW
   Last reconfirmed||2010.10.16 15:41:50
 Ever Confirmed|0   |1

--- Comment #1 from Jonathan Wakely redi at gcc dot gnu.org 2010-10-16 
15:41:50 UTC ---
I think SFINAE doesn't apply here, because there is no template argument
deduction, so the code is not valid.  It shouldn't ICE though


[Bug c++/46043] attribute to mark virtual methods that can't be further overriden so they can be devirtualized

2010-10-16 Thread redi at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46043

--- Comment #2 from Jonathan Wakely redi at gcc dot gnu.org 2010-10-16 
15:46:44 UTC ---
Oops, that's not the right paper, but C++0x already has a [[final]] attribute,
so any work on this bug should be made compatible with the C++0x semantics, to
ease transition from GNU-style attributes to C++0x ones.


[Bug c++/46043] attribute to mark virtual methods that can't be further overriden so they can be devirtualized

2010-10-16 Thread zsojka at seznam dot cz
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46043

--- Comment #3 from Zdenek Sojka zsojka at seznam dot cz 2010-10-16 15:50:41 
UTC ---
Thank you for answers, this is a really good news!


[Bug libstdc++/42734] trivial use of std::thread fails with pure virtual method called

2010-10-16 Thread redi at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=42734

--- Comment #38 from Jonathan Wakely redi at gcc dot gnu.org 2010-10-16 
15:54:16 UTC ---
I can confirm that this crash happens with GCC 4.4 when using -march=i386

But it isn't a problem with 4.5 and 4.6 because it fails to link

$ ~/gcc/4.5/bin/g++  -std=c++0x t.cc  -m32 -march=i386 -pthread
/tmp/ccxpaful.o: In function `__gnu_cxx::__exchange_and_add(int volatile*,
int)':
t.cc:(.text+0x3c): undefined reference to `__sync_fetch_and_add_4'
collect2: ld returned 1 exit status


[Bug tree-optimization/20165] Pointer does not really escape with write

2010-10-16 Thread tkoenig at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=20165

--- Comment #9 from Thomas Koenig tkoenig at gcc dot gnu.org 2010-10-16 
16:06:14 UTC ---
Author: tkoenig
Date: Sat Oct 16 16:06:07 2010
New Revision: 165559

URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=165559
Log:
2010-10-16  Thomas Koenig  tkoe...@gcc.gnu.org

PR fortran/20165
PR fortran/31593
PR fortran/43665
* gfortran.map:  Add _gfortran_transfer_array_write,
_gfortran_transfer_array_write, _gfortran_transfer_character_write,
_gfortran_transfer_character_wide_write,
_gfortran_transfer_complex_write,
_gfortran_transfer_integer_write,
_gfortran_transfer_logical_write and
_gfortran_transfer_real_write.
* io/transfer.c (transfer_integer_write):  Add prototype and
function body as call to the original function, without the
_write.
(transfer_real_write):  Likewise.
(transfer_logical_write):  Likewise.
(transfer_character_write):  Likewise.
(transfer_character_wide_write):  Likewise.
(transfer_complex_write):  Likewise.
(transfer_array_write):  Likewise.

2010-10-16  Thomas Koenig  tkoe...@gcc.gnu.org

PR fortran/20165
PR fortran/31593
PR fortran/43665
* trans-io.c (enum iocall): Add IOCALL_X_INTEGER_WRITE,
IOCALL_X_LOGICAL_WRITE, IOCALL_X_CHARACTER_WRITE,
IOCALL_X_CHARACTER_WIDE_WRIE, IOCALL_X_REAL_WRITE,
IOCALL_X_COMPLEX_WRITE and IOCALL_X_ARRAY_WRITE.
(gfc_build_io_library_fndecls):  Add corresponding function
decls.
(transfer_expr):  If the current transfer is a READ, use
the iocall with the original version, otherwise the version
with _WRITE.
(transfer_array_desc):  Likewise.


Modified:
trunk/gcc/fortran/ChangeLog
trunk/gcc/fortran/trans-io.c
trunk/libgfortran/ChangeLog
trunk/libgfortran/gfortran.map
trunk/libgfortran/io/transfer.c


[Bug fortran/43665] INTENT(IN) etc. optimization of calls: function annotations for noclobber/noescape arguments

2010-10-16 Thread tkoenig at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43665

--- Comment #27 from Thomas Koenig tkoenig at gcc dot gnu.org 2010-10-16 
16:06:16 UTC ---
Author: tkoenig
Date: Sat Oct 16 16:06:07 2010
New Revision: 165559

URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=165559
Log:
2010-10-16  Thomas Koenig  tkoe...@gcc.gnu.org

PR fortran/20165
PR fortran/31593
PR fortran/43665
* gfortran.map:  Add _gfortran_transfer_array_write,
_gfortran_transfer_array_write, _gfortran_transfer_character_write,
_gfortran_transfer_character_wide_write,
_gfortran_transfer_complex_write,
_gfortran_transfer_integer_write,
_gfortran_transfer_logical_write and
_gfortran_transfer_real_write.
* io/transfer.c (transfer_integer_write):  Add prototype and
function body as call to the original function, without the
_write.
(transfer_real_write):  Likewise.
(transfer_logical_write):  Likewise.
(transfer_character_write):  Likewise.
(transfer_character_wide_write):  Likewise.
(transfer_complex_write):  Likewise.
(transfer_array_write):  Likewise.

2010-10-16  Thomas Koenig  tkoe...@gcc.gnu.org

PR fortran/20165
PR fortran/31593
PR fortran/43665
* trans-io.c (enum iocall): Add IOCALL_X_INTEGER_WRITE,
IOCALL_X_LOGICAL_WRITE, IOCALL_X_CHARACTER_WRITE,
IOCALL_X_CHARACTER_WIDE_WRIE, IOCALL_X_REAL_WRITE,
IOCALL_X_COMPLEX_WRITE and IOCALL_X_ARRAY_WRITE.
(gfc_build_io_library_fndecls):  Add corresponding function
decls.
(transfer_expr):  If the current transfer is a READ, use
the iocall with the original version, otherwise the version
with _WRITE.
(transfer_array_desc):  Likewise.


Modified:
trunk/gcc/fortran/ChangeLog
trunk/gcc/fortran/trans-io.c
trunk/libgfortran/ChangeLog
trunk/libgfortran/gfortran.map
trunk/libgfortran/io/transfer.c


[Bug fortran/31593] Invariant DO loop variables and subroutines

2010-10-16 Thread tkoenig at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=31593

--- Comment #44 from Thomas Koenig tkoenig at gcc dot gnu.org 2010-10-16 
16:06:16 UTC ---
Author: tkoenig
Date: Sat Oct 16 16:06:07 2010
New Revision: 165559

URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=165559
Log:
2010-10-16  Thomas Koenig  tkoe...@gcc.gnu.org

PR fortran/20165
PR fortran/31593
PR fortran/43665
* gfortran.map:  Add _gfortran_transfer_array_write,
_gfortran_transfer_array_write, _gfortran_transfer_character_write,
_gfortran_transfer_character_wide_write,
_gfortran_transfer_complex_write,
_gfortran_transfer_integer_write,
_gfortran_transfer_logical_write and
_gfortran_transfer_real_write.
* io/transfer.c (transfer_integer_write):  Add prototype and
function body as call to the original function, without the
_write.
(transfer_real_write):  Likewise.
(transfer_logical_write):  Likewise.
(transfer_character_write):  Likewise.
(transfer_character_wide_write):  Likewise.
(transfer_complex_write):  Likewise.
(transfer_array_write):  Likewise.

2010-10-16  Thomas Koenig  tkoe...@gcc.gnu.org

PR fortran/20165
PR fortran/31593
PR fortran/43665
* trans-io.c (enum iocall): Add IOCALL_X_INTEGER_WRITE,
IOCALL_X_LOGICAL_WRITE, IOCALL_X_CHARACTER_WRITE,
IOCALL_X_CHARACTER_WIDE_WRIE, IOCALL_X_REAL_WRITE,
IOCALL_X_COMPLEX_WRITE and IOCALL_X_ARRAY_WRITE.
(gfc_build_io_library_fndecls):  Add corresponding function
decls.
(transfer_expr):  If the current transfer is a READ, use
the iocall with the original version, otherwise the version
with _WRITE.
(transfer_array_desc):  Likewise.


Modified:
trunk/gcc/fortran/ChangeLog
trunk/gcc/fortran/trans-io.c
trunk/libgfortran/ChangeLog
trunk/libgfortran/gfortran.map
trunk/libgfortran/io/transfer.c


[Bug bootstrap/46050] New: gcc/c-parser.c fails to build with -O2 -finline-functions

2010-10-16 Thread baryluk at smp dot if.uj.edu.pl
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46050

   Summary: gcc/c-parser.c fails to build with -O2
-finline-functions
   Product: gcc
   Version: 4.6.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: bootstrap
AssignedTo: unassig...@gcc.gnu.org
ReportedBy: bary...@smp.if.uj.edu.pl


gcc-4.6-20101009 snapshot. I think it was working in previous snapshot (there
were other errors, but this no). With only -O2 build is ok. So inlineing is a
problem?



r...@tytus:/scratch/obiekty# export FLAGS=-O2 -finline-functions
r...@tytus:/scratch/obiekty# export CFLAGS=$FLAGS
r...@tytus:/scratch/obiekty# export CXXFLAGS=$FLAGS
r...@tytus:/scratch/obiekty#  /scratch/gcc-4.6-20101009/configure \
--enable-languages=c,c++,java \
--enable-checking=yes \
CFLAGS=$CFLAGS CXXFLAGS=$CXXFLAGS
r...@tytus:/scratch/obiekty# make BOOT_CFLAGS=$CFLAGS bootstrap


...

/scratch/obiekty/./prev-gcc/xgcc -B/scratch/obiekty/./prev-gcc/
-B/usr/local/i686-pc-linux-gnu/bin/ -B/usr/local/i686-pc-linux-gnu/bin/
-B/usr/local/i686-pc-linux-gnu/lib/ -isystem
/usr/local/i686-pc-linux-gnu/include -isystem
/usr/local/i686-pc-linux-gnu/sys-include-c  -DIN_GCC_FRONTEND -O2
-finline-functions -gtoggle -DIN_GCC   -W -Wall -Wwrite-strings -Wcast-qual
-Wstrict-prototypes -Wmissing-prototypes -Wmissing-format-attribute -pedantic
-Wno-long-long -Wno-variadic-macros -Wno-overlength-strings -Werror
-Wold-style-definition -Wc++-compat -fno-common  -DHAVE_CONFIG_H -I. -I.
-I/scratch/gcc-4.6-20101009/gcc -I/scratch/gcc-4.6-20101009/gcc/.
-I/scratch/gcc-4.6-20101009/gcc/../include
-I/scratch/gcc-4.6-20101009/gcc/../libcpp/include 
-I/scratch/gcc-4.6-20101009/gcc/../libdecnumber
-I/scratch/gcc-4.6-20101009/gcc/../libdecnumber/bid -I../libdecnumber 
-DCLOOG_PPL_BACKEND  -I/usr/include/libelf 
/scratch/gcc-4.6-20101009/gcc/c-parser.c -o c-parser.o
/scratch/gcc-4.6-20101009/gcc/c-parser.c: In function
‘c_parser_statement_after_labels’:
/scratch/gcc-4.6-20101009/gcc/c-parser.c:4672:19: error: ‘incr’ may be used
uninitialized in this function [-Werror=uninitialized]
/scratch/gcc-4.6-20101009/gcc/c-parser.c:4525:21: note: ‘incr’ was declared
here
cc1: all warnings being treated as errors

make[3]: *** [c-parser.o] Błąd 1
make[3]: Opuszczenie katalogu `/scratch/obiekty/gcc'
make[2]: *** [all-stage2-gcc] Błąd 2
make[2]: Opuszczenie katalogu `/scratch/obiekty'
make[1]: *** [stage2-bubble] Błąd 2
make[1]: Opuszczenie katalogu `/scratch/obiekty'
make: *** [bootstrap] Błąd 2
r...@tytus:/scratch/obiekty#


Thanks.


[Bug bootstrap/46050] gcc/c-parser.c fails to build with -O2 -finline-functions

2010-10-16 Thread ubizjak at gmail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46050

--- Comment #1 from Uros Bizjak ubizjak at gmail dot com 2010-10-16 16:23:14 
UTC ---
Created attachment 22063
  -- http://gcc.gnu.org/bugzilla/attachment.cgi?id=22063
move some initializations

Does attached patch fix the failure for you?


[Bug tree-optimization/46049] [4.6 Regression] ICE: in expand_widen_pattern_expr, at optabs.c:522 with -ftree-vectorize

2010-10-16 Thread hjl.tools at gmail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46049

H.J. Lu hjl.tools at gmail dot com changed:

   What|Removed |Added

 Status|UNCONFIRMED |NEW
   Last reconfirmed||2010.10.16 17:43:32
 CC||hjl.tools at gmail dot com,
   ||irar at il dot ibm.com
   Target Milestone|--- |4.6.0
 Ever Confirmed|0   |1

--- Comment #1 from H.J. Lu hjl.tools at gmail dot com 2010-10-16 17:43:32 
UTC ---
(In reply to comment #0)
 Created attachment 22062 [details]
 reduced testcase
 
 The testcase crashes with two different ICEs, depending on supplied flags.
 
 ICE 1:
 $ gcc -O -ftree-vectorize pr46049.c  
 pr46049.c: In function 'foo':
 pr46049.c:9:6: internal compiler error: in expand_widen_pattern_expr, at
 optabs.c:522
 Please submit a full bug report,
 with preprocessed source if appropriate.
 See http://gcc.gnu.org/bugs.html for instructions.

 ICE 2:
 $ gcc -O -ftree-vectorize -ftree-pre pr46049.c 
 pr46049.c: In function 'foo':
 pr46049.c:18:1: error: unrecognizable insn:
 (insn 62 61 63 6 (set (reg:V4SI 158)
 (vec_merge:V4SI (vec_duplicate:V4SI (reg/v:HI 152 [ x ]))
 (const_vector:V4SI [
 (const_int 0 [0])
 (const_int 0 [0])
 (const_int 0 [0])
 (const_int 0 [0])
 ])
 (const_int 1 [0x1]))) pr46049.c:11 -1
  (nil))
 pr46049.c:18:1: internal compiler error: in extract_insn, at recog.c:2110
 Please submit a full bug report,
 with preprocessed source if appropriate.
 See http://gcc.gnu.org/bugs.html for instructions.
 
 Tested versions:
 r165540 - crash (with PR45352 fix, but that affects only haifa scheduler)
 r163636 - OK

Both are caused by revision 165412:

http://gcc.gnu.org/ml/gcc-cvs/2010-10/msg00596.html


[Bug rtl-optimization/45865] [4.6 Regression] ifcvt/crossjump failed to mark return jump

2010-10-16 Thread hjl.tools at gmail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=45865

H.J. Lu hjl.tools at gmail dot com changed:

   What|Removed |Added

 Status|UNCONFIRMED |NEW
URL|http://gcc.gnu.org/ml/gcc-p |
   |atches/2010-10/msg00417.htm |
   |l   |
   Last reconfirmed||2010.10.16 17:50:48
  Component|debug   |rtl-optimization
Summary|[4.6 regression] Failed to  |[4.6 Regression]
   |build 403.gcc in SPEC CPU   |ifcvt/crossjump failed to
   |2006|mark return jump
 Ever Confirmed|0   |1

--- Comment #10 from H.J. Lu hjl.tools at gmail dot com 2010-10-16 17:50:48 
UTC ---
The function has multiple epilogues:

 epilogue 1

label1:
 ...
 return

 epilogue 2
 ...
 jump label1
 epilogue 3

According to

http://gcc.gnu.org/ml/gcc-patches/2010-10/msg00817.html

jump label1 should be masked as a return jump.


[Bug driver/45936] [4.6 regression] cc1 enters infinite loop within combine_simplify_rtx()

2010-10-16 Thread jojelino at gmail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=45936

gee jojelino at gmail dot com changed:

   What|Removed |Added

Summary|[4.6 regression] cc1 fails  |[4.6 regression] cc1 enters
   |to generate target code |infinite loop within
   |with -O2|combine_simplify_rtx()

--- Comment #4 from gee jojelino at gmail dot com 2010-10-16 17:58:10 UTC ---
oh my god... maybe i need recompile gcc with -O2 -g... 
it died before call frame depth exceed #74673 LOL
#74650 0x00a10020 in if_then_else_cond ()
#74651 0x00a10020 in if_then_else_cond ()
#74652 0x00a10020 in if_then_else_cond ()
#74653 0x00a10020 in if_then_else_cond ()
#74654 0x00a10020 in if_then_else_cond ()
#74655 0x00a10020 in if_then_else_cond ()
#74656 0x00a10020 in if_then_else_cond ()
#74657 0x00a10020 in if_then_else_cond ()
#74658 0x00a16e51 in combine_simplify_rtx ()
#74659 0x00a1934b in subst ()
#74660 0x00a1912c in subst ()
#74661 0x00a1912c in subst ()
#74662 0x00a1c369 in try_combine ()
#74663 0x00a20774 in rest_of_handle_combine ()
#74664 0x0065418d in execute_one_pass ()
#74665 0x00654425 in execute_pass_list ()
#74666 0x00654438 in execute_pass_list ()
#74667 0x0079054b in tree_rest_of_compilation ()
#74668 0x00656a0c in cgraph_expand_function ()
#74669 0x00659885 in cgraph_optimize ()
#74670 0x00659e6a in cgraph_finalize_compilation_unit ()
---Type return to continue, or q return to quit---
#74671 0x0041c428 in c_write_global_declarations ()
#74672 0x006631f2 in toplev_main ()
#74673 0x004a6f50 in main ()


[Bug c/46045] incorrect code generated if redecalring local variable in do-while(0)

2010-10-16 Thread rguenth at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46045

Richard Guenther rguenth at gcc dot gnu.org changed:

   What|Removed |Added

 Status|UNCONFIRMED |RESOLVED
 Resolution||INVALID

--- Comment #2 from Richard Guenther rguenth at gcc dot gnu.org 2010-10-16 
18:43:42 UTC ---
.


[Bug tree-optimization/20165] Pointer does not really escape with write

2010-10-16 Thread tkoenig at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=20165

Thomas Koenig tkoenig at gcc dot gnu.org changed:

   What|Removed |Added

 Status|ASSIGNED|RESOLVED
 Resolution||FIXED

--- Comment #10 from Thomas Koenig tkoenig at gcc dot gnu.org 2010-10-16 
18:53:27 UTC ---
I think this can now be closed.


[Bug fortran/45636] Failed to fold simple Fortran string

2010-10-16 Thread danglin at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=45636

--- Comment #10 from John David Anglin danglin at gcc dot gnu.org 2010-10-16 
18:58:57 UTC ---
Created attachment 22064
  -- http://gcc.gnu.org/bugzilla/attachment.cgi?id=22064
Tree dump.

gfortran.dg/pr45636.f90 fails on hppa-unknown-linux-gnu.  Tree dump
attached.


[Bug fortran/46007] wrong code for SHAPE in a scalarized loop

2010-10-16 Thread tkoenig at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46007

Thomas Koenig tkoenig at gcc dot gnu.org changed:

   What|Removed |Added

 Status|UNCONFIRMED |ASSIGNED
   Last reconfirmed||2010.10.16 18:59:57
 CC||tkoenig at gcc dot gnu.org
 Ever Confirmed|0   |1

--- Comment #2 from Thomas Koenig tkoenig at gcc dot gnu.org 2010-10-16 
18:59:57 UTC ---
(In reply to comment #1)

 But I think it is valid to pass unallocated descriptors. The called function
 takes care of allocating the array data and filling the descriptor in that
 case. 
 I have tried with matmul for example and it works basically.

Yes, this is valid and is done in a lot of places in the library.
Obviously, we missed shape when doing this.

I'll make a patch (should be trivial).


[Bug fortran/41359] Wrong line numbers for debugging/profiling

2010-10-16 Thread tkoenig at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=41359

Thomas Koenig tkoenig at gcc dot gnu.org changed:

   What|Removed |Added

 CC||tkoenig at gcc dot gnu.org
 AssignedTo|mikael at gcc dot gnu.org   |tkoenig at gcc dot gnu.org

--- Comment #7 from Thomas Koenig tkoenig at gcc dot gnu.org 2010-10-16 
19:00:42 UTC ---
Sorry, I meant to assign that bug to myself :-)


[Bug bootstrap/46018] [4.6 Regression] Bootstrap fails on i386-pc-solaris2.10

2010-10-16 Thread ahaas at airmail dot net
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46018

--- Comment #5 from Art Haas ahaas at airmail dot net 2010-10-16 19:15:51 UTC 
---
This morning's build succeeded:

$ gcc -v
Using built-in specs.
COLLECT_GCC=gcc
COLLECT_LTO_WRAPPER=/export/home/arth/local/libexec/gcc/i386-pc-solaris2.10/4.6.0/lto-wrapper
Target: i386-pc-solaris2.10
Configured with: /home/ahaas/gnu/gcc.git/configure
--prefix=/export/home/arth/local --enable-languages=c,c++,objc,fortran
--disable-nls --with-gmp=/export/home/arth/local
--with-mpfr=/export/home/arth/local --enable-checking=release
--enable-threads=posix --with-gnu-as --with-as=/export/home/arth/local/bin/as
--with-gnu-ld --with-ld=/export/home/arth/local/bin/ld
--enable-libstdcxx-pch=no --enable-objc-gc --build=i386-pc-solaris2.10
Thread model: posix
gcc version 4.6.0 20101016 (experimental) (GCC)
$

A build from yesterday morning failed, so some patch applied within the last 24
hours has resolved the issue I've been seeing. I'll try to do a reverse 'git
bisect' to determine which patch actually fixed the build.


[Bug driver/45936] [4.6 regression] cc1 enters infinite loop within combine_simplify_rtx()

2010-10-16 Thread jojelino at gmail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=45936

--- Comment #5 from gee jojelino at gmail dot com 2010-10-16 19:28:07 UTC ---
#74655 0x00a146c0 in if_then_else_cond (x=0x7f2e6940, ptrue=0x4e7c64c,
pfalse=0x4e7c644) at ../.././gcc/combine.c:8490
#74656 0x00a146c0 in if_then_else_cond (x=0x7f2e6970, ptrue=0x4e7c6bc,
pfalse=0x4e7c6b4) at ../.././gcc/combine.c:8490
#74657 0x00a146c0 in if_then_else_cond (x=0x7f2e6940, ptrue=0x4e7c734,
pfalse=0x4e7c73c) at ../.././gcc/combine.c:8490
#74658 0x00a1b4f1 in combine_simplify_rtx (x=0x7f2e6940, op0_mode=SImode,
in_dest=0x0) at ../.././gcc/combine.c:5176
#74659 0x00a1d9eb in subst (x=value optimized out, from=0x7f4bda60,
to=0x7f2e6970, in_dest=0x0, unique_copy=0x0) at ../.././gcc/combine.c:5115
#74660 0x00a1d7cc in subst (x=0x7f62cd60, from=0x7f4bda60, to=0x7f2e6970,
in_dest=0x0, unique_copy=0x0) at ../.././gcc/combine.c:5053
#74661 0x00a1d7cc in subst (x=0x7f62cd70, from=0x7f4bda60, to=0x7f2e6970,
in_dest=0x0, unique_copy=0x0) at ../.././gcc/combine.c:5053
#74662 0x00a20a0f in try_combine (i3=value optimized out,
i2=value optimized out, i1=0x7fa208e8, i0=value optimized out,
---Type return to continue, or q return to quit---
new_direct_jump_p=0x4e7c9fc) at ../.././gcc/combine.c:3194
#74663 0x00a24dd4 in combine_instructions () at ../.././gcc/combine.c:1301
#74664 rest_of_handle_combine () at ../.././gcc/combine.c:13723
#74665 0x00655cfd in execute_one_pass (pass=0xc58d00)
at ../.././gcc/passes.c:1562
#74666 execute_one_pass (pass=0xc58d00) at ../.././gcc/passes.c:1505
#74667 0x00655f95 in execute_pass_list (pass=0xc58d00)
at ../.././gcc/passes.c:1617
#74668 0x00655fa8 in execute_pass_list (pass=0xc56540)
at ../.././gcc/passes.c:1618
#74669 0x007929bb in tree_rest_of_compilation (fndecl=0x7f985380)
at ../.././gcc/tree-optimize.c:419
#74670 0x00658aca in cgraph_expand_function (node=0x7ff639b0)
at ../.././gcc/cgraphunit.c:1494
#74671 0x0065b435 in cgraph_expand_all_functions ()
at ../.././gcc/cgraphunit.c:1553
#74672 cgraph_optimize () at ../.././gcc/cgraphunit.c:1809
#74673 0x0065ba1a in cgraph_finalize_compilation_unit ()
at ../.././gcc/cgraphunit.c:1016
#74674 0x0041c488 in c_write_global_declarations ()
at ../.././gcc/c-decl.c:9821
#74675 0x00664e32 in compile_file (argc=0xe, argv=0x52ba408)
at ../.././gcc/toplev.c:931
#74676 do_compile (argc=0xe, argv=0x52ba408) at ../.././gcc/toplev.c:2363
---Type return to continue, or q return to quit---
#74677 toplev_main (argc=0xe, argv=0x52ba408) at ../.././gcc/toplev.c:2423
#74678 0x004a77d0 in main (argc=0xe, argv=0x52ba408) at ../.././gcc/main.c:36


[Bug tree-optimization/46051] New: [4.6 Regression] ICE: in extract_insn, at recog.c:2110 with -mavx -ftree-vectorize

2010-10-16 Thread zsojka at seznam dot cz
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46051

   Summary: [4.6 Regression] ICE: in extract_insn, at recog.c:2110
with -mavx -ftree-vectorize
   Product: gcc
   Version: 4.6.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: tree-optimization
AssignedTo: unassig...@gcc.gnu.org
ReportedBy: zso...@seznam.cz


Created attachment 22065
  -- http://gcc.gnu.org/bugzilla/attachment.cgi?id=22065
reduced testcase

Compiler output:
$ gcc -O2 -mavx -ftree-vectorize pr46051.c  
pr46051.c: In function 'foo':
pr46051.c:15:1: error: unrecognizable insn:
(insn 41 40 42 3 (set (reg:V4DF 108)
(vec_concat:V4DF (vec_select:V2DF (reg:V4DF 109)
(parallel [
(const_int 0 [0])
(const_int 1 [0x1])
]))
(vec_select:V2DF (reg:V4DF 110)
(parallel [
(const_int 0 [0])
(const_int 1 [0x1])
] pr46051.c:13 -1
 (nil))
pr46051.c:15:1: internal compiler error: in extract_insn, at recog.c:2110
Please submit a full bug report,
with preprocessed source if appropriate.
See http://gcc.gnu.org/bugs.html for instructions.

Tested versions:
r165540 - crash
r163636 - OK


[Bug tree-optimization/46052] New: [4.6 Regression] ICE: in emit_move_insn, at expr.c:3386 with -ftree-vectorize

2010-10-16 Thread zsojka at seznam dot cz
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46052

   Summary: [4.6 Regression] ICE: in emit_move_insn, at
expr.c:3386 with -ftree-vectorize
   Product: gcc
   Version: 4.6.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: tree-optimization
AssignedTo: unassig...@gcc.gnu.org
ReportedBy: zso...@seznam.cz


Created attachment 22066
  -- http://gcc.gnu.org/bugzilla/attachment.cgi?id=22066
reduced testcase

Compiler output:
$ gcc -O -ftree-pre -ftree-vectorize -funswitch-loops pr46052.c 
pr46052.c: In function 'foo':
pr46052.c:13:12: internal compiler error: in emit_move_insn, at expr.c:3386
Please submit a full bug report,
with preprocessed source if appropriate.
See http://gcc.gnu.org/bugs.html for instructions.

When this diff is applied:
=

  static inline char bar (void)
  {
+   return i ? i : 1;
  }

  void foo (int n)
=

the ICE changes to:
$ gcc -O -ftree-pre -ftree-vectorize -funswitch-loops testcase.c
testcase.c: In function 'foo':
testcase.c:9:6: internal compiler error: RTL check: access of elt 16 of vector
with last elt 15 in store_constructor, at expr.c:5744
Please submit a full bug report,
with preprocessed source if appropriate.
See http://gcc.gnu.org/bugs.html for instructions.

Tested revisions:
r165540 - crash
r163636 - OK


[Bug tree-optimization/46053] New: [4.6 Regression] g++.dg/torture/pr45699.C FAILs with -fno-early-inlining

2010-10-16 Thread zsojka at seznam dot cz
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46053

   Summary: [4.6 Regression] g++.dg/torture/pr45699.C FAILs with
-fno-early-inlining
   Product: gcc
   Version: 4.6.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: tree-optimization
AssignedTo: unassig...@gcc.gnu.org
ReportedBy: zso...@seznam.cz


Created attachment 22067
  -- http://gcc.gnu.org/bugzilla/attachment.cgi?id=22067
reduced testcase

Output:
$ g++ -O -fipa-cp -fno-early-inlining pr46053.C 
$ ./a.out 
Aborted

Tested revisions (for the reduced testcase):
r165540 - fail
r163636 - fail
r161659 - fail
r159696 - fail
r158095 - OK
4.5 r163761 - OK


[Bug fortran/45629] libgfortran/io/list_read.c:1872:10: warning: variable 'elem' might be clobbered by 'longjmp' or 'vfork' [-Wclobbered]

2010-10-16 Thread jb at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=45629

--- Comment #1 from Janne Blomqvist jb at gcc dot gnu.org 2010-10-16 22:07:19 
UTC ---
Created attachment 22068
  -- http://gcc.gnu.org/bugzilla/attachment.cgi?id=22068
Preliminary patch

Preliminary patch for getting rid of setjmp/longjmp, instead using an
errno-style flag variable.


[Bug fortran/45629] libgfortran/io/list_read.c:1872:10: warning: variable 'elem' might be clobbered by 'longjmp' or 'vfork' [-Wclobbered]

2010-10-16 Thread jb at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=45629

Janne Blomqvist jb at gcc dot gnu.org changed:

   What|Removed |Added

 CC||jb at gcc dot gnu.org,
   ||jvdelisle at gcc dot
   ||gnu.org

--- Comment #2 from Janne Blomqvist jb at gcc dot gnu.org 2010-10-16 22:10:19 
UTC ---
(In reply to comment #1)
 Created attachment 22068 [details]
 Preliminary patch
 
 Preliminary patch for getting rid of setjmp/longjmp, instead using an
 errno-style flag variable.

... preliminary, as in fails a few testcases. Anyways, I'm not sure when I'll
have time to finish it, but if anyone wants to lend a hand. Not that it's any
particularly high priority either.


[Bug testsuite/45543] [4.6 Regression] New test failures

2010-10-16 Thread danglin at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=45543

--- Comment #4 from John David Anglin danglin at gcc dot gnu.org 2010-10-16 
23:01:00 UTC ---
Author: danglin
Date: Sat Oct 16 23:00:55 2010
New Revision: 165568

URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=165568
Log:
Backport from mainline
2010-09-06  Jakub Jelinek  ja...@redhat.com

PR testsuite/45543
* g++.dg/debug/dwarf2/typedef1.C: Expect just one
DW_TAG_enumeration_type DIE.

2010-09-04  Andreas Schwab  sch...@linux-m68k.org
* g++.dg/debug/dwarf2/typedef1.C: Replace .* by \[^\n\]*.

2009-11-07  Jason Merrill  ja...@redhat.com

PR c++/18451
PR c++/40738
* g++.dg/other/typedef1.C: Update expected errors.

2009-08-03  John David Anglin  dave.ang...@nrc-cnrc.gc.ca

PR testsuite/40858
* g++.dg/debug/dwarf2/typedef1.C: Also match assembler string used with
.ascii.


Modified:
branches/gcc-4_4-branch/gcc/testsuite/ChangeLog
branches/gcc-4_4-branch/gcc/testsuite/g++.dg/debug/dwarf2/typedef1.C


[Bug c++/40738] missing typename error improvement

2010-10-16 Thread danglin at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=40738

--- Comment #4 from John David Anglin danglin at gcc dot gnu.org 2010-10-16 
23:01:02 UTC ---
Author: danglin
Date: Sat Oct 16 23:00:55 2010
New Revision: 165568

URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=165568
Log:
Backport from mainline
2010-09-06  Jakub Jelinek  ja...@redhat.com

PR testsuite/45543
* g++.dg/debug/dwarf2/typedef1.C: Expect just one
DW_TAG_enumeration_type DIE.

2010-09-04  Andreas Schwab  sch...@linux-m68k.org
* g++.dg/debug/dwarf2/typedef1.C: Replace .* by \[^\n\]*.

2009-11-07  Jason Merrill  ja...@redhat.com

PR c++/18451
PR c++/40738
* g++.dg/other/typedef1.C: Update expected errors.

2009-08-03  John David Anglin  dave.ang...@nrc-cnrc.gc.ca

PR testsuite/40858
* g++.dg/debug/dwarf2/typedef1.C: Also match assembler string used with
.ascii.


Modified:
branches/gcc-4_4-branch/gcc/testsuite/ChangeLog
branches/gcc-4_4-branch/gcc/testsuite/g++.dg/debug/dwarf2/typedef1.C


[Bug c++/18451] C++ error message regression

2010-10-16 Thread danglin at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=18451

--- Comment #3 from John David Anglin danglin at gcc dot gnu.org 2010-10-16 
23:01:00 UTC ---
Author: danglin
Date: Sat Oct 16 23:00:55 2010
New Revision: 165568

URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=165568
Log:
Backport from mainline
2010-09-06  Jakub Jelinek  ja...@redhat.com

PR testsuite/45543
* g++.dg/debug/dwarf2/typedef1.C: Expect just one
DW_TAG_enumeration_type DIE.

2010-09-04  Andreas Schwab  sch...@linux-m68k.org
* g++.dg/debug/dwarf2/typedef1.C: Replace .* by \[^\n\]*.

2009-11-07  Jason Merrill  ja...@redhat.com

PR c++/18451
PR c++/40738
* g++.dg/other/typedef1.C: Update expected errors.

2009-08-03  John David Anglin  dave.ang...@nrc-cnrc.gc.ca

PR testsuite/40858
* g++.dg/debug/dwarf2/typedef1.C: Also match assembler string used with
.ascii.


Modified:
branches/gcc-4_4-branch/gcc/testsuite/ChangeLog
branches/gcc-4_4-branch/gcc/testsuite/g++.dg/debug/dwarf2/typedef1.C


[Bug testsuite/40858] FAIL: g++.dg/debug/dwarf2/typedef1.C

2010-10-16 Thread danglin at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=40858

--- Comment #3 from John David Anglin danglin at gcc dot gnu.org 2010-10-16 
23:01:03 UTC ---
Author: danglin
Date: Sat Oct 16 23:00:55 2010
New Revision: 165568

URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=165568
Log:
Backport from mainline
2010-09-06  Jakub Jelinek  ja...@redhat.com

PR testsuite/45543
* g++.dg/debug/dwarf2/typedef1.C: Expect just one
DW_TAG_enumeration_type DIE.

2010-09-04  Andreas Schwab  sch...@linux-m68k.org
* g++.dg/debug/dwarf2/typedef1.C: Replace .* by \[^\n\]*.

2009-11-07  Jason Merrill  ja...@redhat.com

PR c++/18451
PR c++/40738
* g++.dg/other/typedef1.C: Update expected errors.

2009-08-03  John David Anglin  dave.ang...@nrc-cnrc.gc.ca

PR testsuite/40858
* g++.dg/debug/dwarf2/typedef1.C: Also match assembler string used with
.ascii.


Modified:
branches/gcc-4_4-branch/gcc/testsuite/ChangeLog
branches/gcc-4_4-branch/gcc/testsuite/g++.dg/debug/dwarf2/typedef1.C


[Bug tree-optimization/46051] [4.6 Regression] ICE: in extract_insn, at recog.c:2110 with -mavx -ftree-vectorize

2010-10-16 Thread hjl.tools at gmail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46051

H.J. Lu hjl.tools at gmail dot com changed:

   What|Removed |Added

 Status|UNCONFIRMED |NEW
URL||http://gcc.gnu.org/ml/gcc-p
   ||atches/2010-10/msg01410.htm
   ||l
   Last reconfirmed||2010.10.16 23:09:02
 CC||hjl.tools at gmail dot com
   Target Milestone|--- |4.6.0
 Ever Confirmed|0   |1

--- Comment #1 from H.J. Lu hjl.tools at gmail dot com 2010-10-16 23:09:02 
UTC ---
A patch is posted at

http://gcc.gnu.org/ml/gcc-patches/2010-10/msg01410.html


[Bug tree-optimization/46052] [4.6 Regression] ICE: in emit_move_insn, at expr.c:3386 with -ftree-vectorize

2010-10-16 Thread hjl.tools at gmail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46052

H.J. Lu hjl.tools at gmail dot com changed:

   What|Removed |Added

 Status|UNCONFIRMED |NEW
   Last reconfirmed||2010.10.16 23:13:17
 CC||irar at gcc dot gnu.org
   Target Milestone|--- |4.6.0
 Ever Confirmed|0   |1

--- Comment #1 from H.J. Lu hjl.tools at gmail dot com 2010-10-16 23:13:17 
UTC ---
Both are caused by revision 165412:

http://gcc.gnu.org/ml/gcc-cvs/2010-10/msg00596.html


[Bug fortran/45629] libgfortran/io/list_read.c:1872:10: warning: variable 'elem' might be clobbered by 'longjmp' or 'vfork' [-Wclobbered]

2010-10-16 Thread jvdelisle at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=45629

--- Comment #3 from Jerry DeLisle jvdelisle at gcc dot gnu.org 2010-10-16 
23:22:19 UTC ---
I will look it over when I have a few other bugs out of the way.


[Bug tree-optimization/46053] [4.6 Regression] g++.dg/torture/pr45699.C FAILs with -fno-early-inlining

2010-10-16 Thread hjl.tools at gmail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46053

H.J. Lu hjl.tools at gmail dot com changed:

   What|Removed |Added

 Status|UNCONFIRMED |NEW
   Last reconfirmed||2010.10.16 23:18:34
 CC||mjambor at suse dot cz
   Target Milestone|--- |4.6.0
 Ever Confirmed|0   |1

--- Comment #1 from H.J. Lu hjl.tools at gmail dot com 2010-10-16 23:18:34 
UTC ---
It is caused by revision 159362:

http://gcc.gnu.org/ml/gcc-cvs/2010-05/msg00414.html


[Bug tree-optimization/46053] [4.6 Regression] g++.dg/torture/pr45699.C FAILs with -fno-early-inlining

2010-10-16 Thread hjl.tools at gmail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46053

H.J. Lu hjl.tools at gmail dot com changed:

   What|Removed |Added

 Status|UNCONFIRMED |NEW
   Last reconfirmed||2010.10.16 23:18:34
 CC||mjambor at suse dot cz
   Target Milestone|--- |4.6.0
 Ever Confirmed|0   |1

--- Comment #1 from H.J. Lu hjl.tools at gmail dot com 2010-10-16 23:18:34 
UTC ---
It is caused by revision 159362:

http://gcc.gnu.org/ml/gcc-cvs/2010-05/msg00414.html


[Bug middle-end/44206] [4.6 Regression] ICE: Inline clone with address taken

2010-10-16 Thread hubicka at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44206

--- Comment #4 from Jan Hubicka hubicka at gcc dot gnu.org 2010-10-16 
23:47:13 UTC ---
Author: hubicka
Date: Sat Oct 16 23:47:08 2010
New Revision: 165569

URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=165569
Log:
PR middle-end/44206
* g++.dg/torture/pr44206.C: New.
* ipa.c (cgraph_remove_unreachable_nodes): Cleanup; check
existence of refrences before removing the function.

Added:
trunk/gcc/testsuite/g++.dg/torture/pr44206.C
Modified:
trunk/gcc/ChangeLog
trunk/gcc/ipa.c
trunk/gcc/testsuite/ChangeLog


[Bug libfortran/33595] FAIL: gfortran.dg/nint_2.f90 -O0 execution test

2010-10-16 Thread danglin at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=33595

--- Comment #18 from John David Anglin danglin at gcc dot gnu.org 2010-10-17 
00:29:16 UTC ---
Author: danglin
Date: Sun Oct 17 00:29:12 2010
New Revision: 165574

URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=165574
Log:
Backport from mainline
2009-03-29  John David Anglin  dave.ang...@nrc-cnrc.gc.ca

PR fortran/33595
* intrinsics/c99_functions.c (round): Use floor instead of ceil.
Revise checks to round up.
(roundf): Likewise.


Modified:
branches/gcc-4_4-branch/libgfortran/ChangeLog
branches/gcc-4_4-branch/libgfortran/intrinsics/c99_functions.c


[Bug c++/46054] New: Linker cannot resolve a pointer to a static member of a class in an anonymous namespace

2010-10-16 Thread rarrum at gmail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46054

   Summary: Linker cannot resolve a pointer to a static member of
a class in an anonymous namespace
   Product: gcc
   Version: 4.4.3
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: c++
AssignedTo: unassig...@gcc.gnu.org
ReportedBy: rar...@gmail.com


This program demonstrates the problem:

#include iostream

namespace
{
class Foo
{
public:
static const unsigned int Bar=7;
};
}

int main()
{
const unsigned int *pBar=Foo::Bar;

std::cout*pBarstd::endl;

return 0;
}


I'm compiling it like this:
g++ GccBug_AnonClassStatic.cpp -o gccbug

And get this:
/tmp/ccYtiuKX.o: In function `main':
GccBug_AnonClassStatic.cpp:(.text+0xd): undefined reference to `(anonymous
namespace)::Foo::Bar'
collect2: ld returned 1 exit status