Re: G++ rejects legal code

2001-08-16 Thread Alexei Khlebnikov
"Martin v. Loewis" wrote:

> I think so. I fail to see the bug in your report, though. Your code is
> illegal (or, rather, ill-formed - some GNU coding style advises us not
> to claim that you are breaking the law by writing the code).
>
> > template 
> > struct SGBMb : public SGBb <_TW>
> > {
> >  typedef _TTWO _TWO;
> >  _TWO osy;
> >
> >  SGBMb <_TW, _TWO> (_TW _sy, _TWO _osy, void* _st)
> >   : sy (_sy), osy (_osy), st (_st) {}
> > };
>
> The class SGBMb (i.e. all instantiations of the class template) has
> only one data member, namely osy. The members sy and st are defined in
> the base class, so they must not be mentioned in the member
> initializer of the derived class. Instead, you should write

Why only one data member?  Members sy and st are public in the base class.
Initialization in the constructor body works OK. Moreover, (week argument, but)
Visual C++ compiles this OK.


> template 
> struct SGBMb : public SGBb <_TW>
> {
>  typedef _TTWO _TWO;
>  _TWO osy;
>
>  SGBMb <_TW, _TWO> (_TW _sy, _TWO _osy, void* _st)
>   : SGBb<_TW>(_sy, _st), osy (_osy) {}
> };

(or initialize sy and st in {} )





Bug#108881: Wrong package version of libstdc++2.10 in testing and/or unstable?

2001-08-16 Thread Arndt Schoenewald
Package: libstdc++2.10
Version: 1:2.95.2-14

We just discovered the fact that the .deb version of this package in
woody/testing is 1:2.95.2-14, while both sid/unstable and potato/stable
contain 1:2.95.2-13. (Visit e.g.


http://packages.debian.org/cgi-bin/search_packages.pl?keywords=libstdc%2B%2B2.10&searchon=names&subword=1&version=all&release=all

to see for yourself.)

The file name for woody/testing's .deb file is

dists/woody/main/binary-i386/base/libstdc++2.10_2.95.2-14.deb

(i.e. the package pool is not used yet) which suggests this version went
into woody when woody was still unstable and testing did not exist yet.

We came across this inconsistency on a sid/unstable system when we found
that libstdc++2.10 was the only package in /var/lib/dpkg/available that
did not have a "Filename:" entry (apparently because the system has
version 1:2.95.2-14 installed back from its old woody/unstable days,
but the only version that is available now is 1:2.95.2-13).

-- 
Arndt Schoenewald <[EMAIL PROTECTED]>




Re: G++ rejects legal code

2001-08-16 Thread Martin v. Loewis
> Why only one data member?  Members sy and st are public in the base
> class.  Initialization in the constructor body works OK. Moreover,
> (week argument, but) Visual C++ compiles this OK.

This is explained in 12.6.2, [class.base.init]. Paragraph 1 explains
the syntax for member initializers

ctor-initializer: 
   : mem-initializer-list 

mem-initializer-list: 
   mem-initializer 
   mem-initializer , mem-initializer-list 

mem-initializer: 
   mem-initializer-id ( expression-list opt ) 

mem-initializer-id: 
   ::opt nested-name-specifier-opt class-name 
   identifier

Then, paragraph 2 explains what "identifier" means here

# Names in a mem-initializer-id are looked up in the scope of the
# constructor s class and, if not found in that scope, are looked up
# in the scope containing the constructor s definition.  [Note: ...]
# Unless the mem-initializer-id names a nonstatic data member of the
# constructor's class or a direct or virtual base of that class, the
# mem-initializer is ill-formed.  A mem-initializer-list can
# initialize a base class using any name that denotes that base class
# type.

So the identifier is only looked up in the scope of the class itself,
not in any base classes; it must name a data member or a base class.

In the body of the constructor, it is not initialization anymore - it
is assignment. Inside a method, name lookup will find member names of
the base class.

Please note that specifying an initialization in a derived class would
be extremely confusing. In C++, each object is initialized
(constructed) only once. Now, each constructor first calls the base
class constructor. The base class constructor, in turn, will
initialize all members. Now, in the derived class, you want to
initialize the member again???

I recommend to study a book on C++.

Regards,
Martin




Bug#101732: [rodrigc@gcc.gnu.org] Re: optimization/3279: internal error at compiling a c++ source file

2001-08-16 Thread Laurent Bonnaud

Hi,

I tested again with

ii  g++-3.0 3.0.1-0pre010811The GNU C++ compiler.

and the bug is fixed.

Thanks !

--- Begin Message ---
Synopsis: internal error at compiling a c++ source file

State-Changed-From-To: open->closed
State-Changed-By: rodrigc
State-Changed-When: Sun Aug 12 11:09:38 2001
State-Changed-Why:
Fixed in gcc 3.0.1 in CVS.

http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view&pr=3279&database=gcc
--- End Message ---


-- 
Laurent.


Bug#101732: marked as done ([PR optimization/3315] ICE compiling mozilla with -O3)

2001-08-16 Thread Debian Bug Tracking System
Your message dated Thu, 16 Aug 2001 21:46:30 +0200
with message-id <[EMAIL PROTECTED]>
and subject line Bug#101732: [EMAIL PROTECTED] Re: optimization/3279: internal 
error at compiling a c++ source file
has caused the attached Bug report to be marked as done.

This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
Bug report if necessary, and/or fix the problem forthwith.

(NB: If you are a system administrator and have no idea what I am
talking about this indicates a serious mail system misconfiguration
somewhere.  Please contact me immediately.)

Darren Benham
(administrator, Debian Bugs database)

--
Received: (at submit) by bugs.debian.org; 21 Jun 2001 07:07:25 +
>From [EMAIL PROTECTED] Thu Jun 21 02:07:25 2001
Return-path: <[EMAIL PROTECTED]>
Received: from bacchus.lis.inpg.fr [:::195.220.21.21] 
by master.debian.org with esmtp (Exim 3.12 1 (Debian))
id 15CyYm-00021y-00; Thu, 21 Jun 2001 02:07:24 -0500
Received: from irancy.lis.inpg.fr ([EMAIL PROTECTED] [195.220.21.167])
by bacchus.lis.inpg.fr (8.9.3/8.9.3/cf de Bacchus - 25/05/2000) with 
ESMTP id JAA00946;
Thu, 21 Jun 2001 09:07:12 +0200
Received: from bonnaud by irancy.lis.inpg.fr with local (Exim 3.22 #1 (Debian))
id 15CyYa-0006rp-00; Thu, 21 Jun 2001 09:07:12 +0200
From: laurent bonnaud <[EMAIL PROTECTED]>
To: Debian Bug Tracking System <[EMAIL PROTECTED]>
Subject: g++-3.0 ICE compiling mozilla
X-Reportbug-Version: 1.18
X-Mailer: reportbug 1.18
Date: Thu, 21 Jun 2001 09:07:12 +0200
Message-Id: <[EMAIL PROTECTED]>
Sender: laurent bonnaud <[EMAIL PROTECTED]>
Delivered-To: [EMAIL PROTECTED]

Package: g++-3.0
Version: 1:3.0-1
Severity: important


Hi,

here is the bug:

$ fakeroot apt-get -b source mozilla
[building mozilla_0.9.1-3...]
nsFormControlHelper.cpp: In static member function `static void 
   nsFormControlHelper::PaintFixedSizeCheckMark(nsIRenderingContext&, float)':
nsFormControlHelper.cpp:731: Internal error: Segmentation fault
Please submit a full bug report,
with preprocessed source if appropriate.
See http://www.gnu.org/software/gcc/bugs.html> for instructions.

In the directory  /tmp/LB/mozilla-0.9.1/layout/html/forms/src
The following command failed to execute properly:
c++ -o nsFormControlHelper.o -c -DOSTYPE="Linux2.4" -DOSARCH="Linux" -DOJI 
-D_IMPL_NS_HTML -DENDER_LITE -I../../../../dist/include 
-I../../../../dist/include -I/tmp/LB/mozilla-0.9.1/dist/include/nspr 
-I./../../../base/src -I./../../base/src -I./../../style/src 
-I./../../../xul/base/src -I/usr/X11R6/include -fPIC -I/usr/X11R6/include 
-fno-rtti -fno-exceptions -Wall -Wconversion -Wpointer-arith 
-Wbad-function-cast -Wcast-align -Woverloaded-virtual -Wsynth -pedantic 
-Wno-long-long -pipe -fshort-wchar -pthread -pipe -w -O3 -DNDEBUG -DTRIMMED 
-I/usr/X11R6/include -DMOZILLA_CLIENT -include ../../../../config-defs.h 
-Wp,-MD,.deps/nsFormControlHelper.pp nsFormControlHelper.cpp


-- System Information
Debian Release: testing/unstable
Architecture: i386
Kernel: Linux irancy 2.4.4-686 #1 Sun Apr 29 12:22:40 EST 2001 i686
Locale: LANG=C, LC_CTYPE=C

Versions of packages g++-3.0 depends on:
ii  gcc-3.0   1:3.0-1The GNU C compiler.   
ii  gcc-3.0-base  1:3.0-1The GNU compiler collection (base 
ii  libc6 2.2.3-6GNU C Library: Shared libraries an
ii  libstdc++3-dev1:3.0-1The GNU stdc++ library version 3 (


---
Received: (at 101732-done) by bugs.debian.org; 16 Aug 2001 19:50:45 +
>From [EMAIL PROTECTED] Thu Aug 16 14:50:45 2001
Return-path: <[EMAIL PROTECTED]>
Received: from mail.cs.tu-berlin.de [130.149.17.13] (root)
by master.debian.org with esmtp (Exim 3.12 1 (Debian))
id 15XTAC-0008DI-00; Thu, 16 Aug 2001 14:50:44 -0500
Received: from bolero.cs.tu-berlin.de ([EMAIL PROTECTED] [130.149.19.1])
by mail.cs.tu-berlin.de (8.9.3/8.9.3) with ESMTP id VAA24528;
Thu, 16 Aug 2001 21:46:31 +0200 (MET DST)
Received: (from [EMAIL PROTECTED])
by bolero.cs.tu-berlin.de (8.10.2+Sun/8.9.3) id f7GJkVN05451;
Thu, 16 Aug 2001 21:46:31 +0200 (MEST)
From: Matthias Klose <[EMAIL PROTECTED]>
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
Message-ID: <[EMAIL PROTECTED]>
Date: Thu, 16 Aug 2001 21:46:30 +0200
To: Laurent Bonnaud <[EMAIL PROTECTED]>, [EMAIL PROTECTED]
Subject: Bug#101732: [EMAIL PROTECTED] Re: optimization/3279: internal error at 
compiling a c++ source file
In-Reply-To: <[EMAIL PROTECTED]>
References: <[EMAIL PROTECTED]>
X-Mailer: VM 6.89 under 21.1 (patch 14) "Cuyahoga Valley" XEmacs Lucid
Delivered-To: [EMAIL PROTECTED]

Laurent Bonnaud writes:
 > 
 > Hi,
 > 
 > I tested again with
 > 
 > ii  g++-3.0 3.0.1-0pre010811The GNU C++ compiler.
 > 
 > and the bug is fixed.
 > 

Bug#106464: marked as done ([alpha] gcc-2.95 generates bad STABS debugging info on Alpha)

2001-08-16 Thread Debian Bug Tracking System
Your message dated Thu, 16 Aug 2001 16:13:21 -0400 (EDT)
with message-id <[EMAIL PROTECTED]>
and subject line gcc-2.95 generates bad STABS info on Alpha
has caused the attached Bug report to be marked as done.

This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
Bug report if necessary, and/or fix the problem forthwith.

(NB: If you are a system administrator and have no idea what I am
talking about this indicates a serious mail system misconfiguration
somewhere.  Please contact me immediately.)

Darren Benham
(administrator, Debian Bugs database)

--
Received: (at submit) by bugs.debian.org; 24 Jul 2001 18:54:07 +
>From [EMAIL PROTECTED] Tue Jul 24 13:54:07 2001
Return-path: <[EMAIL PROTECTED]>
Received: from dsl092-073-086.bos1.dsl.speakeasy.net (spawn.hockeyfiend.com) 
[:::66.92.73.86] 
by master.debian.org with esmtp (Exim 3.12 1 (Debian))
id 15P7Jn-0003u6-00; Tue, 24 Jul 2001 13:54:07 -0500
Received: from localhost ([127.0.0.1] ident=chris)
by spawn.hockeyfiend.com with esmtp (Exim 3.31 #1 (Debian))
id 15P7Jj-0007OX-00
for <[EMAIL PROTECTED]>; Tue, 24 Jul 2001 14:54:03 -0400
Date: Tue, 24 Jul 2001 14:54:03 -0400 (EDT)
From: "Christopher C. Chimelis" <[EMAIL PROTECTED]>
X-Sender: [EMAIL PROTECTED]
To: [EMAIL PROTECTED]
Subject: [alpha] gcc-2.95 generates bad STABS debugging info on Alpha
Message-ID: <[EMAIL PROTECTED]>
MIME-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
Delivered-To: [EMAIL PROTECTED]


Package: gcc-2.95
Version: 2.95.4-0.010629
Severity: critical

While packaging a new binutils, I noticed that 'strip -g' called twice 
failed to strip binaries that were generated by gcc-2.95, and in fact,
produced binaries that no longer worked (as well as causing strip to
segfault).  This only appears to affect object files, NOT linked binaries,
so stripping archives won't work properly.  When comparing assembly
output, it appears that the stabs info isn't correctly generated.  Using
gcc-3.0 to compile the same file (with the -gstabs option) produced a
correct object file that could be stripped repeatedly without
problems.  Also, using DWARF2 output from gcc-2.95 as well as gcc-3.0 both
worked fine.  I emailed upstream for binutils to verify this and HJ Lu
confirmed that the stabs info doesn't look correct and that binutils was
actually correct.  This appears to only affect Alpha and is holding back a
binutils upload.

This bug is meant as a tracking mechanism for me while I try to fix this
problem, but if someone wants to ask upstream, I can provide asm output
and a very simple testcase.

Binutils that uncovered the problem: 2.11.90.0.24.  2.11.90.0.7 appears to
work fine, but I could reproduce the same problem if I used a certain file
and passed it certain flags.  All gcc-2.95.4 versions that I have (dating
back to April) showed this problem.

C


---
Received: (at 106464-done) by bugs.debian.org; 16 Aug 2001 20:13:22 +
>From [EMAIL PROTECTED] Thu Aug 16 15:13:22 2001
Return-path: <[EMAIL PROTECTED]>
Received: from dsl092-073-086.bos1.dsl.speakeasy.net (spawn.hockeyfiend.com) 
[66.92.73.86] (mail)
by master.debian.org with esmtp (Exim 3.12 1 (Debian))
id 15XTW6-0001Dv-00; Thu, 16 Aug 2001 15:13:22 -0500
Received: from localhost ([127.0.0.1] ident=chris)
by spawn.hockeyfiend.com with esmtp (Exim 3.32 #1 (Debian))
id 15XTW5-0007Py-00
for <[EMAIL PROTECTED]>; Thu, 16 Aug 2001 16:13:21 -0400
Date: Thu, 16 Aug 2001 16:13:21 -0400 (EDT)
From: "Christopher C. Chimelis" <[EMAIL PROTECTED]>
X-Sender: [EMAIL PROTECTED]
To: [EMAIL PROTECTED]
Subject: gcc-2.95 generates bad STABS info on Alpha
Message-ID: <[EMAIL PROTECTED]>
MIME-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
Delivered-To: [EMAIL PROTECTED]


Turns out that this was a gas problem after all.  Solved in binutils
2.11.90.0.27-1.  For historical reasons, there is something wrong with
what gcc-2.95 outputs, but the problems that I was seeing shouldn't have
been caused by that at all.

C




Bug#106466: marked as done ([alpha] gcc-2.95.4.ds4-0.010703 doesn't compile on alpha and other problems)

2001-08-16 Thread Debian Bug Tracking System
Your message dated Thu, 16 Aug 2001 16:14:34 -0400 (EDT)
with message-id <[EMAIL PROTECTED]>
and subject line New patch allows compilation on alpha
has caused the attached Bug report to be marked as done.

This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
Bug report if necessary, and/or fix the problem forthwith.

(NB: If you are a system administrator and have no idea what I am
talking about this indicates a serious mail system misconfiguration
somewhere.  Please contact me immediately.)

Darren Benham
(administrator, Debian Bugs database)

--
Received: (at submit) by bugs.debian.org; 24 Jul 2001 19:02:26 +
>From [EMAIL PROTECTED] Tue Jul 24 14:02:26 2001
Return-path: <[EMAIL PROTECTED]>
Received: from dsl092-073-086.bos1.dsl.speakeasy.net (spawn.hockeyfiend.com) 
[:::66.92.73.86] 
by master.debian.org with esmtp (Exim 3.12 1 (Debian))
id 15P7Rp-0004B0-00; Tue, 24 Jul 2001 14:02:25 -0500
Received: from localhost ([127.0.0.1] ident=chris)
by spawn.hockeyfiend.com with esmtp (Exim 3.31 #1 (Debian))
id 15P7Rp-0007P5-00
for <[EMAIL PROTECTED]>; Tue, 24 Jul 2001 15:02:25 -0400
Date: Tue, 24 Jul 2001 15:02:25 -0400 (EDT)
From: "Christopher C. Chimelis" <[EMAIL PROTECTED]>
X-Sender: [EMAIL PROTECTED]
To: [EMAIL PROTECTED]
Subject: [alpha] gcc-2.95.4.ds4-0.010703 doesn't compile on alpha and other
 problems
Message-ID: <[EMAIL PROTECTED]>
MIME-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
Delivered-To: [EMAIL PROTECTED]


Package: gcc-2.95
Version: 0.010703
Severity: critical

Apparently, the new gcc-gas-hidden patch isn't correct, or rather, isn't
complete.  As it stands, gcc will not bootstrap with that patch applied. 
The change needed to make this patch work involves possibly changing the
C++ ABI, since we're adding __dso_handle to the binaries, which the C++
constructors and destructors are supposed to "hang off of".  These were,
in fact, the main part of the changes that got C++ working on Alpha in gcc
3.0.x.  If the entire patch is applied, which again is quite sizable and
would involve changing non-arch-specific parts of gcc, everything C++
should be recompiled on Alpha for it to work correctly.  I'm not sure this
is a good idea.

On the other hand, according to the glibc list, we need this patch or
similar to generate a glibc that doesn't have the atexit() and
fstat() problems that we have now (since it also helps hidden and weak
symbols to be linked in DSOs properly).

So the dilemma stands...

Is there any way that we can fix gcc-2.95 to link DSOs with hidden and
weak symbols properly without altering the code so much?  My alternative
seems to be to move Alpha to gcc-3.0 for woody, which generates a
properly linked glibc (supposedly..untested so far), but which may also
cause more recompilations and problems at this stage of the release cycle.

This bug is meant more as a tracking bug for me while I look into this,
but if you could ask upstream about the linking problems, I would greatly
appreciate it.  I'm a bit swamped by Alpha issues and my own packages ATM
and can't spend too much time working this out on a few lists...

C


---
Received: (at 106466-done) by bugs.debian.org; 16 Aug 2001 20:14:35 +
>From [EMAIL PROTECTED] Thu Aug 16 15:14:35 2001
Return-path: <[EMAIL PROTECTED]>
Received: from dsl092-073-086.bos1.dsl.speakeasy.net (spawn.hockeyfiend.com) 
[66.92.73.86] (mail)
by master.debian.org with esmtp (Exim 3.12 1 (Debian))
id 15XTXH-0001M4-00; Thu, 16 Aug 2001 15:14:35 -0500
Received: from localhost ([127.0.0.1] ident=chris)
by spawn.hockeyfiend.com with esmtp (Exim 3.32 #1 (Debian))
id 15XTXG-0007QJ-00
for <[EMAIL PROTECTED]>; Thu, 16 Aug 2001 16:14:34 -0400
Date: Thu, 16 Aug 2001 16:14:34 -0400 (EDT)
From: "Christopher C. Chimelis" <[EMAIL PROTECTED]>
X-Sender: [EMAIL PROTECTED]
To: [EMAIL PROTECTED]
Subject: New patch allows compilation on alpha
Message-ID: <[EMAIL PROTECTED]>
MIME-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
Delivered-To: [EMAIL PROTECTED]


The original hidden-weak linkage patch was incomplete, hence the
compilation problems.  We now have a working patch that appears to do
exactly what it should (CVS already updated), so this bug can be closed.

C