* C++ default copy ctor not optimal
@ 1999-02-12 3:00 ` Sylvain Pion
[not found] ` < 19990212120037.C13091@rigel.inria.fr >
` (2 more replies)
0 siblings, 3 replies; 264+ messages in thread
From: Sylvain Pion @ 1999-02-12 3:00 UTC (permalink / raw)
To: EGCS list
Hi,
I've got a class with 2 "double" data members (like a complex).
The default copy ctor should be a memberwise copy, but it is slower (on x86)
than when I declare it explicitly. In fact, mine generates copies using the
FPU, whereas the default does something like a memcopy, using more 32bits
"mov"s, and thus is slower.
It's not a big problem, but is there a way to "fix" this, or is it considered
not safe enough, or too hard ?
--
Sylvain
^ permalink raw reply [flat|nested] 264+ messages in thread
[parent not found: < 19990212120037.C13091@rigel.inria.fr >]
* Re: C++ default copy ctor not optimal
[not found] ` < 19990212120037.C13091@rigel.inria.fr >
@ 1999-02-12 4:46 ` Sylvain Pion
1999-02-28 22:53 ` Sylvain Pion
0 siblings, 1 reply; 264+ messages in thread
From: Sylvain Pion @ 1999-02-12 4:46 UTC (permalink / raw)
To: EGCS list
On Fri, Feb 12, 1999 at 12:00:37PM +0100, Sylvain Pion wrote:
> I've got a class with 2 "double" data members (like a complex).
> The default copy ctor should be a memberwise copy, but it is slower (on x86)
> than when I declare it explicitly. In fact, mine generates copies using the
> FPU, whereas the default does something like a memcopy, using more 32bits
> "mov"s, and thus is slower.
In case I was not explicit enough, the test case is the following C++ program:
----------------
struct IA {
double i,s;
#ifdef TEST
IA () {}
IA (const IA & d) : i(d.i), s(d.s) {}
IA & operator=(const IA & d)
{i = d.i; s = d.s; return *this; }
#endif
};
int main() { IA a; IA b = a; }
----------------
If you compile with "g++ -O2", you get:
main:
.LFB1:
pushl %ebp
.LCFI0:
movl %esp,%ebp
.LCFI1:
subl $32,%esp
.LCFI2:
movl -16(%ebp),%eax
movl %eax,-32(%ebp)
movl -12(%ebp),%eax
movl %eax,-28(%ebp)
movl -8(%ebp),%eax
movl %eax,-24(%ebp)
movl -4(%ebp),%eax
movl %eax,-20(%ebp)
xorl %eax,%eax
movl %ebp,%esp
popl %ebp
ret
And if you compile with "g++ -DTEST -O2":
main:
.LFB1:
pushl %ebp
.LCFI0:
movl %esp,%ebp
.LCFI1:
subl $32,%esp
.LCFI2:
fldl -16(%ebp)
fstpl -32(%ebp)
fldl -8(%ebp)
fstpl -24(%ebp)
xorl %eax,%eax
movl %ebp,%esp
popl %ebp
ret
It is clearly the second one I prefer :). It is tested with the 19990208
snapshot, but it's basically the same with all versions I've tried so far.
G++ 2.8.1 doesn't use the FPU even in the second case. And it's on
Linux-2.0/libc5/x86. I've not tested other archs.
I can understand that it's maybe not safe to copy a 64bits memory area via the
FPU, when it's precision mode is set to single float (maybe it might trunc it,
or raise an exception if it's a NaN or anything ?).
However, if we are allowed to copy doubles via the FPU, then it might be a
valid "optimisation" to propagate it in such cases.
However, I can live with the 2 additionnal lines of code in my class to get
this optimisation. I was just curious why it's done this way.
--
Sylvain
^ permalink raw reply [flat|nested] 264+ messages in thread
* Re: C++ default copy ctor not optimal
1999-02-12 4:46 ` Sylvain Pion
@ 1999-02-28 22:53 ` Sylvain Pion
0 siblings, 0 replies; 264+ messages in thread
From: Sylvain Pion @ 1999-02-28 22:53 UTC (permalink / raw)
To: EGCS list
On Fri, Feb 12, 1999 at 12:00:37PM +0100, Sylvain Pion wrote:
> I've got a class with 2 "double" data members (like a complex).
> The default copy ctor should be a memberwise copy, but it is slower (on x86)
> than when I declare it explicitly. In fact, mine generates copies using the
> FPU, whereas the default does something like a memcopy, using more 32bits
> "mov"s, and thus is slower.
In case I was not explicit enough, the test case is the following C++ program:
----------------
struct IA {
double i,s;
#ifdef TEST
IA () {}
IA (const IA & d) : i(d.i), s(d.s) {}
IA & operator=(const IA & d)
{i = d.i; s = d.s; return *this; }
#endif
};
int main() { IA a; IA b = a; }
----------------
If you compile with "g++ -O2", you get:
main:
.LFB1:
pushl %ebp
.LCFI0:
movl %esp,%ebp
.LCFI1:
subl $32,%esp
.LCFI2:
movl -16(%ebp),%eax
movl %eax,-32(%ebp)
movl -12(%ebp),%eax
movl %eax,-28(%ebp)
movl -8(%ebp),%eax
movl %eax,-24(%ebp)
movl -4(%ebp),%eax
movl %eax,-20(%ebp)
xorl %eax,%eax
movl %ebp,%esp
popl %ebp
ret
And if you compile with "g++ -DTEST -O2":
main:
.LFB1:
pushl %ebp
.LCFI0:
movl %esp,%ebp
.LCFI1:
subl $32,%esp
.LCFI2:
fldl -16(%ebp)
fstpl -32(%ebp)
fldl -8(%ebp)
fstpl -24(%ebp)
xorl %eax,%eax
movl %ebp,%esp
popl %ebp
ret
It is clearly the second one I prefer :). It is tested with the 19990208
snapshot, but it's basically the same with all versions I've tried so far.
G++ 2.8.1 doesn't use the FPU even in the second case. And it's on
Linux-2.0/libc5/x86. I've not tested other archs.
I can understand that it's maybe not safe to copy a 64bits memory area via the
FPU, when it's precision mode is set to single float (maybe it might trunc it,
or raise an exception if it's a NaN or anything ?).
However, if we are allowed to copy doubles via the FPU, then it might be a
valid "optimisation" to propagate it in such cases.
However, I can live with the 2 additionnal lines of code in my class to get
this optimisation. I was just curious why it's done this way.
--
Sylvain
^ permalink raw reply [flat|nested] 264+ messages in thread
[parent not found: <19990212134607.F13091.cygnus.egcs@rigel.inria.fr>]
* Re: C++ default copy ctor not optimal
[not found] ` <19990212134607.F13091.cygnus.egcs@rigel.inria.fr>
@ 1999-02-12 13:41 ` Jason Merrill
[not found] ` <3.0.6.32.19990212172607.00844860.cygnus.egcs@pop.netaddress.com>
` (2 more replies)
0 siblings, 3 replies; 264+ messages in thread
From: Jason Merrill @ 1999-02-12 13:41 UTC (permalink / raw)
To: Sylvain Pion; +Cc: egcs
This is a backend issue; the frontend just tells the backend "copy this
struct". The insns used are up to the backend.
Jason
^ permalink raw reply [flat|nested] 264+ messages in thread
[parent not found: <3.0.6.32.19990212172607.00844860.cygnus.egcs@pop.netaddress.com>]
[parent not found: < u9d83fl2q8.fsf@yorick.cygnus.com >]
* Re: C++ default copy ctor not optimal
[not found] ` < u9d83fl2q8.fsf@yorick.cygnus.com >
@ 1999-02-12 14:26 ` Paul Derbyshire
1999-02-28 22:53 ` Paul Derbyshire
1999-02-14 10:57 ` Sylvain Pion
1 sibling, 1 reply; 264+ messages in thread
From: Paul Derbyshire @ 1999-02-12 14:26 UTC (permalink / raw)
To: egcs
At 01:41 PM 2/12/99 -0800, you wrote:
>This is a backend issue; the frontend just tells the backend "copy this
>struct". The insns used are up to the backend.
Was he disputing that?
--
.*. "Clouds are not spheres, mountains are not cones, coastlines are not
-() < circles, and bark is not smooth, nor does lightning travel in a
`*' straight line." -------------------------------------------------
-- B. Mandelbrot | http://surf.to/pgd.net
_____________________ ____|________ Paul Derbyshire pderbysh@usa.net
Programmer & Humanist|ICQ: 10423848|
^ permalink raw reply [flat|nested] 264+ messages in thread
* Re: C++ default copy ctor not optimal
1999-02-12 14:26 ` Paul Derbyshire
@ 1999-02-28 22:53 ` Paul Derbyshire
0 siblings, 0 replies; 264+ messages in thread
From: Paul Derbyshire @ 1999-02-28 22:53 UTC (permalink / raw)
To: egcs
At 01:41 PM 2/12/99 -0800, you wrote:
>This is a backend issue; the frontend just tells the backend "copy this
>struct". The insns used are up to the backend.
Was he disputing that?
--
.*. "Clouds are not spheres, mountains are not cones, coastlines are not
-() < circles, and bark is not smooth, nor does lightning travel in a
`*' straight line." -------------------------------------------------
-- B. Mandelbrot | http://surf.to/pgd.net
_____________________ ____|________ Paul Derbyshire pderbysh@usa.net
Programmer & Humanist|ICQ: 10423848|
^ permalink raw reply [flat|nested] 264+ messages in thread
* Re: C++ default copy ctor not optimal
[not found] ` < u9d83fl2q8.fsf@yorick.cygnus.com >
1999-02-12 14:26 ` Paul Derbyshire
@ 1999-02-14 10:57 ` Sylvain Pion
1999-02-14 21:01 ` Jason Merrill
1999-02-28 22:53 ` Sylvain Pion
1 sibling, 2 replies; 264+ messages in thread
From: Sylvain Pion @ 1999-02-14 10:57 UTC (permalink / raw)
To: Jason Merrill; +Cc: egcs
On Fri, Feb 12, 1999 at 01:41:03PM -0800, Jason Merrill wrote:
> This is a backend issue; the frontend just tells the backend "copy this
> struct". The insns used are up to the backend.
Ok, then is it possible to have the backend do some kind of memcpy using the
FP registers (this reminds me some old linux kernel patch never included...) ?
What are the problems with this approach ?
--
Sylvain
^ permalink raw reply [flat|nested] 264+ messages in thread
* Re: C++ default copy ctor not optimal
1999-02-14 10:57 ` Sylvain Pion
@ 1999-02-14 21:01 ` Jason Merrill
[not found] ` < u9iud4jm52.fsf@yorick.cygnus.com >
1999-02-28 22:53 ` Jason Merrill
1999-02-28 22:53 ` Sylvain Pion
1 sibling, 2 replies; 264+ messages in thread
From: Jason Merrill @ 1999-02-14 21:01 UTC (permalink / raw)
To: Sylvain Pion; +Cc: egcs
>>>>> Sylvain Pion <Sylvain.Pion@sophia.inria.fr> writes:
> On Fri, Feb 12, 1999 at 01:41:03PM -0800, Jason Merrill wrote:
>> This is a backend issue; the frontend just tells the backend "copy this
>> struct". The insns used are up to the backend.
> Ok, then is it possible to have the backend do some kind of memcpy using
> the FP registers (this reminds me some old linux kernel patch never
> included...) ? What are the problems with this approach ?
The backend should be able to determine that the struct it's copying is
composed of FP values and use FP instructions for the copy. I don't think
we can do that in general on the x86 because the FPU faults if you try to
load an invalid FP value, but I may be remembering wrong.
Jason
^ permalink raw reply [flat|nested] 264+ messages in thread
[parent not found: < u9iud4jm52.fsf@yorick.cygnus.com >]
* Re: C++ default copy ctor not optimal
[not found] ` < u9iud4jm52.fsf@yorick.cygnus.com >
@ 1999-02-15 17:15 ` Richard Henderson
[not found] ` < 19990215171524.A19063@cygnus.com >
1999-02-28 22:53 ` Richard Henderson
0 siblings, 2 replies; 264+ messages in thread
From: Richard Henderson @ 1999-02-15 17:15 UTC (permalink / raw)
To: Jason Merrill, Sylvain Pion; +Cc: egcs
On Sun, Feb 14, 1999 at 09:01:29PM -0800, Jason Merrill wrote:
> The backend should be able to determine that the struct it's copying is
> composed of FP values and use FP instructions for the copy. I don't think
> we can do that in general on the x86 because the FPU faults if you try to
> load an invalid FP value, but I may be remembering wrong.
The x86 fpu can load DImode values without faulting, and since
the frational part of the extended double register is 64-bits
wide, we don't lose bits.
r~
^ permalink raw reply [flat|nested] 264+ messages in thread
[parent not found: < 19990215171524.A19063@cygnus.com >]
* Re: C++ default copy ctor not optimal
[not found] ` < 19990215171524.A19063@cygnus.com >
@ 1999-02-15 20:14 ` Jeffrey A Law
[not found] ` < 14555.919137968@upchuck >
1999-02-28 22:53 ` Jeffrey A Law
1999-02-16 10:08 ` Joe Buck
1 sibling, 2 replies; 264+ messages in thread
From: Jeffrey A Law @ 1999-02-15 20:14 UTC (permalink / raw)
To: Richard Henderson; +Cc: Jason Merrill, Sylvain Pion, egcs
In message < 19990215171524.A19063@cygnus.com >you write:
> On Sun, Feb 14, 1999 at 09:01:29PM -0800, Jason Merrill wrote:
> > The backend should be able to determine that the struct it's copying is
> > composed of FP values and use FP instructions for the copy. I don't thin
> k
> > we can do that in general on the x86 because the FPU faults if you try to
> > load an invalid FP value, but I may be remembering wrong.
>
> The x86 fpu can load DImode values without faulting, and since
> the frational part of the extended double register is 64-bits
> wide, we don't lose bits.
But is it profitable? Particularly in cases where the addresses are
not 64bit aligned?
jeff
^ permalink raw reply [flat|nested] 264+ messages in thread
[parent not found: < 14555.919137968@upchuck >]
* Re: C++ default copy ctor not optimal
[not found] ` < 14555.919137968@upchuck >
@ 1999-02-15 21:39 ` Richard Henderson
[not found] ` < 19990215213927.A19254@cygnus.com >
1999-02-28 22:53 ` Richard Henderson
0 siblings, 2 replies; 264+ messages in thread
From: Richard Henderson @ 1999-02-15 21:39 UTC (permalink / raw)
To: law; +Cc: Jason Merrill, Sylvain Pion, egcs
On Mon, Feb 15, 1999 at 09:06:08PM -0700, Jeffrey A Law wrote:
> > The x86 fpu can load DImode values without faulting, and since
> > the frational part of the extended double register is 64-bits
> > wide, we don't lose bits.
> But is it profitable? Particularly in cases where the addresses are
> not 64bit aligned?
Certainly not when alignment is not to be had. But on Pentiums,
it can speed things up quite a bit.
I'm not sure what effect it has on p2. Probably still a good thing
in small doses. Larger copies should use rep movsl, as the microcode
does neat cache tricks.
r~
^ permalink raw reply [flat|nested] 264+ messages in thread
[parent not found: < 19990215213927.A19254@cygnus.com >]
* Re: C++ default copy ctor not optimal
[not found] ` < 19990215213927.A19254@cygnus.com >
@ 1999-02-16 0:10 ` Sylvain Pion
1999-02-28 22:53 ` Sylvain Pion
0 siblings, 1 reply; 264+ messages in thread
From: Sylvain Pion @ 1999-02-16 0:10 UTC (permalink / raw)
To: Richard Henderson; +Cc: law, Jason Merrill, egcs
On Mon, Feb 15, 1999 at 09:39:27PM -0800, Richard Henderson wrote:
> On Mon, Feb 15, 1999 at 09:06:08PM -0700, Jeffrey A Law wrote:
> > > The x86 fpu can load DImode values without faulting, and since
> > > the frational part of the extended double register is 64-bits
> > > wide, we don't lose bits.
"can" ? Does it mean it depends on some flags in the FPCW ?
What about if the FPU is in MMX mode ? I guess it won't work, will it ?
In MMX mode, we can use MMX insns, but the compiler doesn't know
in which mode we are.
> > But is it profitable? Particularly in cases where the addresses are
> > not 64bit aligned?
>
> Certainly not when alignment is not to be had. But on Pentiums,
> it can speed things up quite a bit.
Yes. The speed up is noticable for my stuff, so I guess that using it more
widely is a good idea, if it's feasible.
The speed difference is also very important in case the alignement is not
correct.
> I'm not sure what effect it has on p2. Probably still a good thing
> in small doses. Larger copies should use rep movsl, as the microcode
> does neat cache tricks.
I don't know, but the FP memcpy() patch for the linux kernel worked very well
(at least on pentiums), and it was for large areas.
--
Sylvain
^ permalink raw reply [flat|nested] 264+ messages in thread
* Re: C++ default copy ctor not optimal
1999-02-16 0:10 ` Sylvain Pion
@ 1999-02-28 22:53 ` Sylvain Pion
0 siblings, 0 replies; 264+ messages in thread
From: Sylvain Pion @ 1999-02-28 22:53 UTC (permalink / raw)
To: Richard Henderson; +Cc: law, Jason Merrill, egcs
On Mon, Feb 15, 1999 at 09:39:27PM -0800, Richard Henderson wrote:
> On Mon, Feb 15, 1999 at 09:06:08PM -0700, Jeffrey A Law wrote:
> > > The x86 fpu can load DImode values without faulting, and since
> > > the frational part of the extended double register is 64-bits
> > > wide, we don't lose bits.
"can" ? Does it mean it depends on some flags in the FPCW ?
What about if the FPU is in MMX mode ? I guess it won't work, will it ?
In MMX mode, we can use MMX insns, but the compiler doesn't know
in which mode we are.
> > But is it profitable? Particularly in cases where the addresses are
> > not 64bit aligned?
>
> Certainly not when alignment is not to be had. But on Pentiums,
> it can speed things up quite a bit.
Yes. The speed up is noticable for my stuff, so I guess that using it more
widely is a good idea, if it's feasible.
The speed difference is also very important in case the alignement is not
correct.
> I'm not sure what effect it has on p2. Probably still a good thing
> in small doses. Larger copies should use rep movsl, as the microcode
> does neat cache tricks.
I don't know, but the FP memcpy() patch for the linux kernel worked very well
(at least on pentiums), and it was for large areas.
--
Sylvain
^ permalink raw reply [flat|nested] 264+ messages in thread
* Re: C++ default copy ctor not optimal
1999-02-15 21:39 ` Richard Henderson
[not found] ` < 19990215213927.A19254@cygnus.com >
@ 1999-02-28 22:53 ` Richard Henderson
1 sibling, 0 replies; 264+ messages in thread
From: Richard Henderson @ 1999-02-28 22:53 UTC (permalink / raw)
To: law; +Cc: Jason Merrill, Sylvain Pion, egcs
On Mon, Feb 15, 1999 at 09:06:08PM -0700, Jeffrey A Law wrote:
> > The x86 fpu can load DImode values without faulting, and since
> > the frational part of the extended double register is 64-bits
> > wide, we don't lose bits.
> But is it profitable? Particularly in cases where the addresses are
> not 64bit aligned?
Certainly not when alignment is not to be had. But on Pentiums,
it can speed things up quite a bit.
I'm not sure what effect it has on p2. Probably still a good thing
in small doses. Larger copies should use rep movsl, as the microcode
does neat cache tricks.
r~
^ permalink raw reply [flat|nested] 264+ messages in thread
* Re: C++ default copy ctor not optimal
1999-02-15 20:14 ` Jeffrey A Law
[not found] ` < 14555.919137968@upchuck >
@ 1999-02-28 22:53 ` Jeffrey A Law
1 sibling, 0 replies; 264+ messages in thread
From: Jeffrey A Law @ 1999-02-28 22:53 UTC (permalink / raw)
To: Richard Henderson; +Cc: Jason Merrill, Sylvain Pion, egcs
In message < 19990215171524.A19063@cygnus.com >you write:
> On Sun, Feb 14, 1999 at 09:01:29PM -0800, Jason Merrill wrote:
> > The backend should be able to determine that the struct it's copying is
> > composed of FP values and use FP instructions for the copy. I don't thin
> k
> > we can do that in general on the x86 because the FPU faults if you try to
> > load an invalid FP value, but I may be remembering wrong.
>
> The x86 fpu can load DImode values without faulting, and since
> the frational part of the extended double register is 64-bits
> wide, we don't lose bits.
But is it profitable? Particularly in cases where the addresses are
not 64bit aligned?
jeff
^ permalink raw reply [flat|nested] 264+ messages in thread
* Re: C++ default copy ctor not optimal
[not found] ` < 19990215171524.A19063@cygnus.com >
1999-02-15 20:14 ` Jeffrey A Law
@ 1999-02-16 10:08 ` Joe Buck
[not found] ` < 199902161807.KAA19010@atrus.synopsys.com >
1999-02-28 22:53 ` Joe Buck
1 sibling, 2 replies; 264+ messages in thread
From: Joe Buck @ 1999-02-16 10:08 UTC (permalink / raw)
To: Richard Henderson; +Cc: jason, Sylvain.Pion, egcs
Richard Henderson writes:
> The x86 fpu can load DImode values without faulting, and since
> the frational part of the extended double register is 64-bits
> wide, we don't lose bits.
But doesn't that assume certain settings of IEEE modes? (I'm not an
expert on IEEE signalling, so I'm not sure about the answer to this
question).
^ permalink raw reply [flat|nested] 264+ messages in thread
[parent not found: < 199902161807.KAA19010@atrus.synopsys.com >]
* Re: C++ default copy ctor not optimal
[not found] ` < 199902161807.KAA19010@atrus.synopsys.com >
@ 1999-02-16 10:18 ` Richard Henderson
[not found] ` < 19990216101811.A19900@cygnus.com >
1999-02-28 22:53 ` Richard Henderson
0 siblings, 2 replies; 264+ messages in thread
From: Richard Henderson @ 1999-02-16 10:18 UTC (permalink / raw)
To: Joe Buck; +Cc: jason, Sylvain.Pion, egcs
On Tue, Feb 16, 1999 at 10:07:26AM -0800, Joe Buck wrote:
> But doesn't that assume certain settings of IEEE modes? (I'm not an
> expert on IEEE signalling, so I'm not sure about the answer to this
> question).
No. You're not loading a double, you're loading a long long.
Moreover, no rounding occurs with just the load, so you can
safely move around 64-bit hunks.
r~
^ permalink raw reply [flat|nested] 264+ messages in thread
[parent not found: < 19990216101811.A19900@cygnus.com >]
* Re: C++ default copy ctor not optimal
[not found] ` < 19990216101811.A19900@cygnus.com >
@ 1999-02-16 10:33 ` Sylvain Pion
1999-02-28 22:53 ` Sylvain Pion
0 siblings, 1 reply; 264+ messages in thread
From: Sylvain Pion @ 1999-02-16 10:33 UTC (permalink / raw)
To: Richard Henderson; +Cc: Joe Buck, jason, egcs
On Tue, Feb 16, 1999 at 10:18:11AM -0800, Richard Henderson wrote:
> On Tue, Feb 16, 1999 at 10:07:26AM -0800, Joe Buck wrote:
> > But doesn't that assume certain settings of IEEE modes? (I'm not an
> > expert on IEEE signalling, so I'm not sure about the answer to this
> > question).
>
> No. You're not loading a double, you're loading a long long.
> Moreover, no rounding occurs with just the load, so you can
> safely move around 64-bit hunks.
I get it ! You mean using fild/fist and not fld/fst.
--
Sylvain
^ permalink raw reply [flat|nested] 264+ messages in thread
* Re: C++ default copy ctor not optimal
1999-02-16 10:33 ` Sylvain Pion
@ 1999-02-28 22:53 ` Sylvain Pion
0 siblings, 0 replies; 264+ messages in thread
From: Sylvain Pion @ 1999-02-28 22:53 UTC (permalink / raw)
To: Richard Henderson; +Cc: Joe Buck, jason, egcs
On Tue, Feb 16, 1999 at 10:18:11AM -0800, Richard Henderson wrote:
> On Tue, Feb 16, 1999 at 10:07:26AM -0800, Joe Buck wrote:
> > But doesn't that assume certain settings of IEEE modes? (I'm not an
> > expert on IEEE signalling, so I'm not sure about the answer to this
> > question).
>
> No. You're not loading a double, you're loading a long long.
> Moreover, no rounding occurs with just the load, so you can
> safely move around 64-bit hunks.
I get it ! You mean using fild/fist and not fld/fst.
--
Sylvain
^ permalink raw reply [flat|nested] 264+ messages in thread
* Re: C++ default copy ctor not optimal
1999-02-16 10:18 ` Richard Henderson
[not found] ` < 19990216101811.A19900@cygnus.com >
@ 1999-02-28 22:53 ` Richard Henderson
1 sibling, 0 replies; 264+ messages in thread
From: Richard Henderson @ 1999-02-28 22:53 UTC (permalink / raw)
To: Joe Buck; +Cc: jason, Sylvain.Pion, egcs
On Tue, Feb 16, 1999 at 10:07:26AM -0800, Joe Buck wrote:
> But doesn't that assume certain settings of IEEE modes? (I'm not an
> expert on IEEE signalling, so I'm not sure about the answer to this
> question).
No. You're not loading a double, you're loading a long long.
Moreover, no rounding occurs with just the load, so you can
safely move around 64-bit hunks.
r~
^ permalink raw reply [flat|nested] 264+ messages in thread
* Re: C++ default copy ctor not optimal
1999-02-16 10:08 ` Joe Buck
[not found] ` < 199902161807.KAA19010@atrus.synopsys.com >
@ 1999-02-28 22:53 ` Joe Buck
1 sibling, 0 replies; 264+ messages in thread
From: Joe Buck @ 1999-02-28 22:53 UTC (permalink / raw)
To: Richard Henderson; +Cc: jason, Sylvain.Pion, egcs
Richard Henderson writes:
> The x86 fpu can load DImode values without faulting, and since
> the frational part of the extended double register is 64-bits
> wide, we don't lose bits.
But doesn't that assume certain settings of IEEE modes? (I'm not an
expert on IEEE signalling, so I'm not sure about the answer to this
question).
^ permalink raw reply [flat|nested] 264+ messages in thread
* Re: C++ default copy ctor not optimal
1999-02-15 17:15 ` Richard Henderson
[not found] ` < 19990215171524.A19063@cygnus.com >
@ 1999-02-28 22:53 ` Richard Henderson
1 sibling, 0 replies; 264+ messages in thread
From: Richard Henderson @ 1999-02-28 22:53 UTC (permalink / raw)
To: Jason Merrill, Sylvain Pion; +Cc: egcs
On Sun, Feb 14, 1999 at 09:01:29PM -0800, Jason Merrill wrote:
> The backend should be able to determine that the struct it's copying is
> composed of FP values and use FP instructions for the copy. I don't think
> we can do that in general on the x86 because the FPU faults if you try to
> load an invalid FP value, but I may be remembering wrong.
The x86 fpu can load DImode values without faulting, and since
the frational part of the extended double register is 64-bits
wide, we don't lose bits.
r~
^ permalink raw reply [flat|nested] 264+ messages in thread
* Re: C++ default copy ctor not optimal
1999-02-14 21:01 ` Jason Merrill
[not found] ` < u9iud4jm52.fsf@yorick.cygnus.com >
@ 1999-02-28 22:53 ` Jason Merrill
1 sibling, 0 replies; 264+ messages in thread
From: Jason Merrill @ 1999-02-28 22:53 UTC (permalink / raw)
To: Sylvain Pion; +Cc: egcs
>>>>> Sylvain Pion <Sylvain.Pion@sophia.inria.fr> writes:
> On Fri, Feb 12, 1999 at 01:41:03PM -0800, Jason Merrill wrote:
>> This is a backend issue; the frontend just tells the backend "copy this
>> struct". The insns used are up to the backend.
> Ok, then is it possible to have the backend do some kind of memcpy using
> the FP registers (this reminds me some old linux kernel patch never
> included...) ? What are the problems with this approach ?
The backend should be able to determine that the struct it's copying is
composed of FP values and use FP instructions for the copy. I don't think
we can do that in general on the x86 because the FPU faults if you try to
load an invalid FP value, but I may be remembering wrong.
Jason
^ permalink raw reply [flat|nested] 264+ messages in thread
* Re: C++ default copy ctor not optimal
1999-02-14 10:57 ` Sylvain Pion
1999-02-14 21:01 ` Jason Merrill
@ 1999-02-28 22:53 ` Sylvain Pion
1 sibling, 0 replies; 264+ messages in thread
From: Sylvain Pion @ 1999-02-28 22:53 UTC (permalink / raw)
To: Jason Merrill; +Cc: egcs
On Fri, Feb 12, 1999 at 01:41:03PM -0800, Jason Merrill wrote:
> This is a backend issue; the frontend just tells the backend "copy this
> struct". The insns used are up to the backend.
Ok, then is it possible to have the backend do some kind of memcpy using the
FP registers (this reminds me some old linux kernel patch never included...) ?
What are the problems with this approach ?
--
Sylvain
^ permalink raw reply [flat|nested] 264+ messages in thread
* Re: C++ default copy ctor not optimal
1999-02-12 13:41 ` Jason Merrill
[not found] ` <3.0.6.32.19990212172607.00844860.cygnus.egcs@pop.netaddress.com>
[not found] ` < u9d83fl2q8.fsf@yorick.cygnus.com >
@ 1999-02-28 22:53 ` Jason Merrill
2 siblings, 0 replies; 264+ messages in thread
From: Jason Merrill @ 1999-02-28 22:53 UTC (permalink / raw)
To: Sylvain Pion; +Cc: egcs
This is a backend issue; the frontend just tells the backend "copy this
struct". The insns used are up to the backend.
Jason
^ permalink raw reply [flat|nested] 264+ messages in thread
* C++ default copy ctor not optimal
1999-02-12 3:00 ` C++ default copy ctor not optimal Sylvain Pion
[not found] ` < 19990212120037.C13091@rigel.inria.fr >
[not found] ` <19990212134607.F13091.cygnus.egcs@rigel.inria.fr>
@ 1999-02-28 22:53 ` Sylvain Pion
2 siblings, 0 replies; 264+ messages in thread
From: Sylvain Pion @ 1999-02-28 22:53 UTC (permalink / raw)
To: EGCS list
Hi,
I've got a class with 2 "double" data members (like a complex).
The default copy ctor should be a memberwise copy, but it is slower (on x86)
than when I declare it explicitly. In fact, mine generates copies using the
FPU, whereas the default does something like a memcopy, using more 32bits
"mov"s, and thus is slower.
It's not a big problem, but is there a way to "fix" this, or is it considered
not safe enough, or too hard ?
--
Sylvain
^ permalink raw reply [flat|nested] 264+ messages in thread
[parent not found: <3.0.6.32.19990212180551.00841100.cygnus.egcs@pop.netaddress.com>]
* Re: Code gen question
[not found] ` <3.0.6.32.19990212180551.00841100.cygnus.egcs@pop.netaddress.com>
@ 1999-02-12 15:29 ` Jason Merrill
[not found] ` < u990e3kxq8.fsf@yorick.cygnus.com >
1999-02-28 22:53 ` Jason Merrill
0 siblings, 2 replies; 264+ messages in thread
From: Jason Merrill @ 1999-02-12 15:29 UTC (permalink / raw)
To: Paul Derbyshire; +Cc: egcs
>>>>> Paul Derbyshire <pderbysh@usa.net> writes:
> Which will cause cc1plus to generate better code?
> inline int myclass::myfunc (int j) { return j*j*j; }
> inline int myclass::myfunc (const int &j) { return j*j*j; }
> My guess would be the latter, since the latter when inlined won't make a
> copy of the argument passed.
Neither will the former. The difference is that the latter refers to its
arguments address, which impairs optimization (though not as much as it
used to). Absolutely pass scalars by value.
Jason
^ permalink raw reply [flat|nested] 264+ messages in thread
[parent not found: < u990e3kxq8.fsf@yorick.cygnus.com >]
* Re: Code gen question
[not found] ` < u990e3kxq8.fsf@yorick.cygnus.com >
@ 1999-02-12 17:34 ` Paul Derbyshire
[not found] ` < 3.0.6.32.19990212203311.0083e6d0@pop.netaddress.com >
1999-02-28 22:53 ` Paul Derbyshire
0 siblings, 2 replies; 264+ messages in thread
From: Paul Derbyshire @ 1999-02-12 17:34 UTC (permalink / raw)
To: egcs
At 03:29 PM 2/12/99 -0800, you wrote:
>>>>>> Paul Derbyshire <pderbysh@usa.net> writes:
>
> > Which will cause cc1plus to generate better code?
> > inline int myclass::myfunc (int j) { return j*j*j; }
>
> > inline int myclass::myfunc (const int &j) { return j*j*j; }
>
> > My guess would be the latter, since the latter when inlined won't make a
> > copy of the argument passed.
>
>Neither will the former.
It won't? So it will observe that j is never modified making copying
unnecessary?
>The difference is that the latter refers to its
>arguments address, which impairs optimization (though not as much as it
>used to).
It does? If the address isn't used except to dereference, I'd expect the
compiler to turn
int j, k;
j = compute_something();
k = myclass::myfunc(j);
into something that resembles:
compute_something();
; j is in eax.
movl %eax, %ebx ; k is in ebx now. Hmm, it is copied anyways in a
; sense.
mul %eax, %ebx ; k == j*j
mul %eax, %ebx ; k == j*j*j
>Absolutely pass scalars by value.
Does this also apply to stock GCC? PGCC? Most of the differences among
these three gccs, except for namespace support (and extern inline behavior
:-)), are optimization differences.
--
.*. "Clouds are not spheres, mountains are not cones, coastlines are not
-() < circles, and bark is not smooth, nor does lightning travel in a
`*' straight line." -------------------------------------------------
-- B. Mandelbrot | http://surf.to/pgd.net
_____________________ ____|________ Paul Derbyshire pderbysh@usa.net
Programmer & Humanist|ICQ: 10423848|
^ permalink raw reply [flat|nested] 264+ messages in thread
[parent not found: < 3.0.6.32.19990212203311.0083e6d0@pop.netaddress.com >]
* Re: Code gen question
[not found] ` < 3.0.6.32.19990212203311.0083e6d0@pop.netaddress.com >
@ 1999-02-12 17:39 ` Jeffrey A Law
1999-02-28 22:53 ` Jeffrey A Law
0 siblings, 1 reply; 264+ messages in thread
From: Jeffrey A Law @ 1999-02-12 17:39 UTC (permalink / raw)
To: Paul Derbyshire; +Cc: egcs
In message < 3.0.6.32.19990212203311.0083e6d0@pop.netaddress.com >you write:
> It won't? So it will observe that j is never modified making copying
> unnecessary?
The copy will initially appear, then be optimized away if at all possible
by local and global copy propagation.
> >The difference is that the latter refers to its
> >arguments address, which impairs optimization (though not as much as it
> >used to).
>
> It does? If the address isn't used except to dereference, I'd expect the
> compiler to turn
It will try, but it may not always succeed. When you take the address of an
object you generally make analysis more difficult on the compiler and sometimes
it will be unable to decipher the result.
In general you are better off writing the code in the most natural and
straightforward way instead of trying to micro-optimize too much. Instead
spend your time writing goot algorithms.
> >Absolutely pass scalars by value.
>
> Does this also apply to stock GCC? PGCC? Most of the differences among
> these three gccs, except for namespace support (and extern inline behavior
> :-)), are optimization differences.
Yes. This generally applies to any compiler. As a general rule compilers are
a lot better at optimizing scalars than pointers to scalars.
jeff
^ permalink raw reply [flat|nested] 264+ messages in thread
* Re: Code gen question
1999-02-12 17:39 ` Jeffrey A Law
@ 1999-02-28 22:53 ` Jeffrey A Law
0 siblings, 0 replies; 264+ messages in thread
From: Jeffrey A Law @ 1999-02-28 22:53 UTC (permalink / raw)
To: Paul Derbyshire; +Cc: egcs
In message < 3.0.6.32.19990212203311.0083e6d0@pop.netaddress.com >you write:
> It won't? So it will observe that j is never modified making copying
> unnecessary?
The copy will initially appear, then be optimized away if at all possible
by local and global copy propagation.
> >The difference is that the latter refers to its
> >arguments address, which impairs optimization (though not as much as it
> >used to).
>
> It does? If the address isn't used except to dereference, I'd expect the
> compiler to turn
It will try, but it may not always succeed. When you take the address of an
object you generally make analysis more difficult on the compiler and sometimes
it will be unable to decipher the result.
In general you are better off writing the code in the most natural and
straightforward way instead of trying to micro-optimize too much. Instead
spend your time writing goot algorithms.
> >Absolutely pass scalars by value.
>
> Does this also apply to stock GCC? PGCC? Most of the differences among
> these three gccs, except for namespace support (and extern inline behavior
> :-)), are optimization differences.
Yes. This generally applies to any compiler. As a general rule compilers are
a lot better at optimizing scalars than pointers to scalars.
jeff
^ permalink raw reply [flat|nested] 264+ messages in thread
* Re: Code gen question
1999-02-12 17:34 ` Paul Derbyshire
[not found] ` < 3.0.6.32.19990212203311.0083e6d0@pop.netaddress.com >
@ 1999-02-28 22:53 ` Paul Derbyshire
1 sibling, 0 replies; 264+ messages in thread
From: Paul Derbyshire @ 1999-02-28 22:53 UTC (permalink / raw)
To: egcs
At 03:29 PM 2/12/99 -0800, you wrote:
>>>>>> Paul Derbyshire <pderbysh@usa.net> writes:
>
> > Which will cause cc1plus to generate better code?
> > inline int myclass::myfunc (int j) { return j*j*j; }
>
> > inline int myclass::myfunc (const int &j) { return j*j*j; }
>
> > My guess would be the latter, since the latter when inlined won't make a
> > copy of the argument passed.
>
>Neither will the former.
It won't? So it will observe that j is never modified making copying
unnecessary?
>The difference is that the latter refers to its
>arguments address, which impairs optimization (though not as much as it
>used to).
It does? If the address isn't used except to dereference, I'd expect the
compiler to turn
int j, k;
j = compute_something();
k = myclass::myfunc(j);
into something that resembles:
compute_something();
; j is in eax.
movl %eax, %ebx ; k is in ebx now. Hmm, it is copied anyways in a
; sense.
mul %eax, %ebx ; k == j*j
mul %eax, %ebx ; k == j*j*j
>Absolutely pass scalars by value.
Does this also apply to stock GCC? PGCC? Most of the differences among
these three gccs, except for namespace support (and extern inline behavior
:-)), are optimization differences.
--
.*. "Clouds are not spheres, mountains are not cones, coastlines are not
-() < circles, and bark is not smooth, nor does lightning travel in a
`*' straight line." -------------------------------------------------
-- B. Mandelbrot | http://surf.to/pgd.net
_____________________ ____|________ Paul Derbyshire pderbysh@usa.net
Programmer & Humanist|ICQ: 10423848|
^ permalink raw reply [flat|nested] 264+ messages in thread
* Re: Code gen question
1999-02-12 15:29 ` Code gen question Jason Merrill
[not found] ` < u990e3kxq8.fsf@yorick.cygnus.com >
@ 1999-02-28 22:53 ` Jason Merrill
1 sibling, 0 replies; 264+ messages in thread
From: Jason Merrill @ 1999-02-28 22:53 UTC (permalink / raw)
To: Paul Derbyshire; +Cc: egcs
>>>>> Paul Derbyshire <pderbysh@usa.net> writes:
> Which will cause cc1plus to generate better code?
> inline int myclass::myfunc (int j) { return j*j*j; }
> inline int myclass::myfunc (const int &j) { return j*j*j; }
> My guess would be the latter, since the latter when inlined won't make a
> copy of the argument passed.
Neither will the former. The difference is that the latter refers to its
arguments address, which impairs optimization (though not as much as it
used to). Absolutely pass scalars by value.
Jason
^ permalink raw reply [flat|nested] 264+ messages in thread
* Re: Question about compiler-supplied assignment and copy with egcs.
@ 1999-02-24 16:27 ` Mike Stump
[not found] ` < 199902250026.QAA04615@kankakee.wrs.com >
` (2 more replies)
0 siblings, 3 replies; 264+ messages in thread
From: Mike Stump @ 1999-02-24 16:27 UTC (permalink / raw)
To: egcs, pderbysh
> Date: Wed, 24 Feb 1999 06:19:53 -0500
> To: egcs@egcs.cygnus.com
> From: Paul Derbyshire <pderbysh@usa.net>
> Q: If egcs is allowed to supply the assignment operator and copy
> constructor for a "plain old data" type, will they be generally more
> efficient than user supplied versions?
This is a reasonable assumption. If it is ever false, I think a
performance enhancement request is reasonable.
^ permalink raw reply [flat|nested] 264+ messages in thread
[parent not found: < 199902250026.QAA04615@kankakee.wrs.com >]
* Re: Question about compiler-supplied assignment and copy with egcs.
[not found] ` < 199902250026.QAA04615@kankakee.wrs.com >
@ 1999-02-25 22:31 ` Paul Derbyshire
1999-02-28 22:53 ` Paul Derbyshire
0 siblings, 1 reply; 264+ messages in thread
From: Paul Derbyshire @ 1999-02-25 22:31 UTC (permalink / raw)
To: egcs
At 04:26 PM 2/24/99 -0800, you wrote:
>> Date: Wed, 24 Feb 1999 06:19:53 -0500
>> To: egcs@egcs.cygnus.com
>> From: Paul Derbyshire <pderbysh@usa.net>
>
>> Q: If egcs is allowed to supply the assignment operator and copy
>> constructor for a "plain old data" type, will they be generally more
>> efficient than user supplied versions?
>
>This is a reasonable assumption. If it is ever false, I think a
>performance enhancement request is reasonable.
With that in mind, I could probably supply a draft of a working valarray
header that will do as the standard requests and avoid some temporaries
with argument passing and return.
--
.*. "Clouds are not spheres, mountains are not cones, coastlines are not
-() < circles, and bark is not smooth, nor does lightning travel in a
`*' straight line." -------------------------------------------------
-- B. Mandelbrot | http://surf.to/pgd.net
_____________________ ____|________ Paul Derbyshire pderbysh@usa.net
Programmer & Humanist|ICQ: 10423848|
^ permalink raw reply [flat|nested] 264+ messages in thread
* Re: Question about compiler-supplied assignment and copy with egcs.
1999-02-25 22:31 ` Paul Derbyshire
@ 1999-02-28 22:53 ` Paul Derbyshire
0 siblings, 0 replies; 264+ messages in thread
From: Paul Derbyshire @ 1999-02-28 22:53 UTC (permalink / raw)
To: egcs
At 04:26 PM 2/24/99 -0800, you wrote:
>> Date: Wed, 24 Feb 1999 06:19:53 -0500
>> To: egcs@egcs.cygnus.com
>> From: Paul Derbyshire <pderbysh@usa.net>
>
>> Q: If egcs is allowed to supply the assignment operator and copy
>> constructor for a "plain old data" type, will they be generally more
>> efficient than user supplied versions?
>
>This is a reasonable assumption. If it is ever false, I think a
>performance enhancement request is reasonable.
With that in mind, I could probably supply a draft of a working valarray
header that will do as the standard requests and avoid some temporaries
with argument passing and return.
--
.*. "Clouds are not spheres, mountains are not cones, coastlines are not
-() < circles, and bark is not smooth, nor does lightning travel in a
`*' straight line." -------------------------------------------------
-- B. Mandelbrot | http://surf.to/pgd.net
_____________________ ____|________ Paul Derbyshire pderbysh@usa.net
Programmer & Humanist|ICQ: 10423848|
^ permalink raw reply [flat|nested] 264+ messages in thread
[parent not found: <3.0.6.32.19990226013110.0083c530.cygnus.egcs@pop.globalserve.net>]
* Re: Question about compiler-supplied assignment and copy with egcs.
[not found] ` <3.0.6.32.19990226013110.0083c530.cygnus.egcs@pop.globalserve.net>
@ 1999-02-25 22:45 ` Jason Merrill
[not found] ` < u91zjdirxx.fsf@yorick.cygnus.com >
` (2 more replies)
0 siblings, 3 replies; 264+ messages in thread
From: Jason Merrill @ 1999-02-25 22:45 UTC (permalink / raw)
To: Paul Derbyshire; +Cc: egcs
>>>>> Paul Derbyshire <pderbysh@usa.net> writes:
> With that in mind, I could probably supply a draft of a working valarray
> header that will do as the standard requests and avoid some temporaries
> with argument passing and return.
The libstdc++ rewrite already has a version of valarray, so it might be
more useful for you to work on improving that one. If you're interested in
helping with the library, you should join the libstdc++ v3 mailing list.
See
http://sourceware.cygnus.com/libstdc++/
for more info.
Jason
^ permalink raw reply [flat|nested] 264+ messages in thread
[parent not found: < u91zjdirxx.fsf@yorick.cygnus.com >]
* Re: Question about compiler-supplied assignment and copy with egcs.
[not found] ` < u91zjdirxx.fsf@yorick.cygnus.com >
@ 1999-02-27 21:01 ` Paul Derbyshire
[not found] ` < 3.0.6.32.19990228000118.00923340@pop.globalserve.net >
1999-02-28 22:53 ` Question about compiler-supplied assignment and copy with egcs Paul Derbyshire
0 siblings, 2 replies; 264+ messages in thread
From: Paul Derbyshire @ 1999-02-27 21:01 UTC (permalink / raw)
To: egcs
At 10:45 PM 2/25/99 -0800, you wrote:
>The libstdc++ rewrite already has a version of valarray...
That's strange, because the egcs zip I got from the Simtel DJGPP tree in
v2beta contains no such file as lang/cxx/valarray.
--
.*. "Clouds are not spheres, mountains are not cones, coastlines are not
-() < circles, and bark is not smooth, nor does lightning travel in a
`*' straight line." -------------------------------------------------
-- B. Mandelbrot | http://surf.to/pgd.net
_____________________ ____|________ Paul Derbyshire pderbysh@usa.net
Programmer & Humanist|ICQ: 10423848|
^ permalink raw reply [flat|nested] 264+ messages in thread
[parent not found: < 3.0.6.32.19990228000118.00923340@pop.globalserve.net >]
* Re: Question about compiler-supplied assignment and copy with
[not found] ` < 3.0.6.32.19990228000118.00923340@pop.globalserve.net >
@ 1999-02-27 21:58 ` Joe Buck
[not found] ` < 199902280557.VAA14849@atrus.synopsys.com >
1999-02-28 22:53 ` Joe Buck
0 siblings, 2 replies; 264+ messages in thread
From: Joe Buck @ 1999-02-27 21:58 UTC (permalink / raw)
To: Paul Derbyshire; +Cc: egcs
> At 10:45 PM 2/25/99 -0800, you wrote:
> >The libstdc++ rewrite already has a version of valarray...
>
> That's strange, because the egcs zip I got from the Simtel DJGPP tree in
> v2beta contains no such file as lang/cxx/valarray.
egcs contains libstdc++ v2. The rewrite is libstdc++ v3. v3 is still
not usable, since important functionality is missing, though parts of
it work.
^ permalink raw reply [flat|nested] 264+ messages in thread
[parent not found: < 199902280557.VAA14849@atrus.synopsys.com >]
* Re: Question about compiler-supplied assignment and copy with
[not found] ` < 199902280557.VAA14849@atrus.synopsys.com >
@ 1999-02-27 23:29 ` Paul Derbyshire
1999-02-28 22:53 ` Paul Derbyshire
0 siblings, 1 reply; 264+ messages in thread
From: Paul Derbyshire @ 1999-02-27 23:29 UTC (permalink / raw)
To: egcs
At 09:57 PM 2/27/99 PST, you wrote:
>
>> At 10:45 PM 2/25/99 -0800, you wrote:
>> >The libstdc++ rewrite already has a version of valarray...
>>
>> That's strange, because the egcs zip I got from the Simtel DJGPP tree in
>> v2beta contains no such file as lang/cxx/valarray.
>
>egcs contains libstdc++ v2. The rewrite is libstdc++ v3. v3 is still
>not usable, since important functionality is missing, though parts of
>it work.
Parts that work in v2? How can that possibly happen, since v3 is presumably
v2 with bugs fixed and more stuff implemented.
--
.*. "Clouds are not spheres, mountains are not cones, coastlines are not
-() < circles, and bark is not smooth, nor does lightning travel in a
`*' straight line." -------------------------------------------------
-- B. Mandelbrot | http://surf.to/pgd.net
_____________________ ____|________ Paul Derbyshire pderbysh@usa.net
Programmer & Humanist|ICQ: 10423848|
^ permalink raw reply [flat|nested] 264+ messages in thread
* Re: Question about compiler-supplied assignment and copy with
1999-02-27 23:29 ` Paul Derbyshire
@ 1999-02-28 22:53 ` Paul Derbyshire
0 siblings, 0 replies; 264+ messages in thread
From: Paul Derbyshire @ 1999-02-28 22:53 UTC (permalink / raw)
To: egcs
At 09:57 PM 2/27/99 PST, you wrote:
>
>> At 10:45 PM 2/25/99 -0800, you wrote:
>> >The libstdc++ rewrite already has a version of valarray...
>>
>> That's strange, because the egcs zip I got from the Simtel DJGPP tree in
>> v2beta contains no such file as lang/cxx/valarray.
>
>egcs contains libstdc++ v2. The rewrite is libstdc++ v3. v3 is still
>not usable, since important functionality is missing, though parts of
>it work.
Parts that work in v2? How can that possibly happen, since v3 is presumably
v2 with bugs fixed and more stuff implemented.
--
.*. "Clouds are not spheres, mountains are not cones, coastlines are not
-() < circles, and bark is not smooth, nor does lightning travel in a
`*' straight line." -------------------------------------------------
-- B. Mandelbrot | http://surf.to/pgd.net
_____________________ ____|________ Paul Derbyshire pderbysh@usa.net
Programmer & Humanist|ICQ: 10423848|
^ permalink raw reply [flat|nested] 264+ messages in thread
* Re: Question about compiler-supplied assignment and copy with
1999-02-27 21:58 ` Question about compiler-supplied assignment and copy with Joe Buck
[not found] ` < 199902280557.VAA14849@atrus.synopsys.com >
@ 1999-02-28 22:53 ` Joe Buck
1 sibling, 0 replies; 264+ messages in thread
From: Joe Buck @ 1999-02-28 22:53 UTC (permalink / raw)
To: Paul Derbyshire; +Cc: egcs
> At 10:45 PM 2/25/99 -0800, you wrote:
> >The libstdc++ rewrite already has a version of valarray...
>
> That's strange, because the egcs zip I got from the Simtel DJGPP tree in
> v2beta contains no such file as lang/cxx/valarray.
egcs contains libstdc++ v2. The rewrite is libstdc++ v3. v3 is still
not usable, since important functionality is missing, though parts of
it work.
^ permalink raw reply [flat|nested] 264+ messages in thread
* Re: Question about compiler-supplied assignment and copy with egcs.
1999-02-27 21:01 ` Paul Derbyshire
[not found] ` < 3.0.6.32.19990228000118.00923340@pop.globalserve.net >
@ 1999-02-28 22:53 ` Paul Derbyshire
1 sibling, 0 replies; 264+ messages in thread
From: Paul Derbyshire @ 1999-02-28 22:53 UTC (permalink / raw)
To: egcs
At 10:45 PM 2/25/99 -0800, you wrote:
>The libstdc++ rewrite already has a version of valarray...
That's strange, because the egcs zip I got from the Simtel DJGPP tree in
v2beta contains no such file as lang/cxx/valarray.
--
.*. "Clouds are not spheres, mountains are not cones, coastlines are not
-() < circles, and bark is not smooth, nor does lightning travel in a
`*' straight line." -------------------------------------------------
-- B. Mandelbrot | http://surf.to/pgd.net
_____________________ ____|________ Paul Derbyshire pderbysh@usa.net
Programmer & Humanist|ICQ: 10423848|
^ permalink raw reply [flat|nested] 264+ messages in thread
[parent not found: <3.0.6.32.19990228000118.00923340.cygnus.egcs@pop.globalserve.net>]
* Re: Question about compiler-supplied assignment and copy with egcs.
[not found] ` <3.0.6.32.19990228000118.00923340.cygnus.egcs@pop.globalserve.net>
@ 1999-02-27 23:55 ` Jason Merrill
[not found] ` < u9yalj7yin.fsf@yorick.cygnus.com >
1999-02-28 22:53 ` Jason Merrill
0 siblings, 2 replies; 264+ messages in thread
From: Jason Merrill @ 1999-02-27 23:55 UTC (permalink / raw)
To: Paul Derbyshire; +Cc: egcs
>>>>> Paul Derbyshire <pderbysh@usa.net> writes:
> At 10:45 PM 2/25/99 -0800, you wrote:
>> The libstdc++ rewrite already has a version of valarray...
> That's strange, because the egcs zip I got from the Simtel DJGPP tree in
> v2beta contains no such file as lang/cxx/valarray.
That's because the libstdc++ rewrite isn't part of egcs yet, and won't be
until it's complete. Please refer to the URL I sent you before.
Jason
^ permalink raw reply [flat|nested] 264+ messages in thread
[parent not found: < u9yalj7yin.fsf@yorick.cygnus.com >]
* Re: Question about compiler-supplied assignment and copy with egcs.
[not found] ` < u9yalj7yin.fsf@yorick.cygnus.com >
@ 1999-02-28 1:10 ` Paul Derbyshire
1999-02-28 2:51 ` Tudor Hulubei
` (2 more replies)
0 siblings, 3 replies; 264+ messages in thread
From: Paul Derbyshire @ 1999-02-28 1:10 UTC (permalink / raw)
To: egcs
At 11:55 PM 2/27/99 -0800, you wrote:
>That's because the libstdc++ rewrite isn't part of egcs yet, and won't be
>until it's complete. Please refer to the URL I sent you before.
Why don't they merge each new feature in as they get it finished, instead
of making everyone wait until they can get their Webcams set up and have a
ribbon-cutting ceremony in live video streaming? :P
As for the URL, I found the mailing list address there and (because I can
potentially help out) sent a subscribe request, but the list server failed
to respond in any way whatsoever. All I did was put "subscribe Paul
Derbyshire" in the subject and in the first line of the body (since list
servers vary a great deal and sometimes expect a command in the subject,
sometimes in the body). There should have been SOME response, even if only
a bounce of some kind or a list server error message.
As near as I can tell, I've either
1. Been silently subscribed to a low volume mailing list, with no
welcome message, and where even the submit addresses and ways to
filter the messages to their own folder will have to wait until I
actually receive a posting through it, or else
2. Something was wrong with my request and the list server error
message bounced or otherwise failed to get through, which is
highly improbable since as always I used valid From: and Reply-To:
addresses, no munging, or else
3. The list server has a bug, or else
4. The list server is down.
Does anyone have any information about which of these is the case? I need
to know to tailor my course of action; 1 invovles waiting and seeing, 2
involves cajoling list server syntax information out of somebody, and 3 and
4 involve the list server's Someone In Charge being notified about the
error so they can Fix It and possibly resubmitting the subscription request.
Note: I have allowed adequate time for a response to be generated and
received, namely over 4 hours. Since I don't live in Upper Moldovia or
anywhere similarly exotic, that should be plenty of time to receive either
a response or a 4-hour-warning bounce if Something Went Wrong.
--
.*. "Clouds are not spheres, mountains are not cones, coastlines are not
-() < circles, and bark is not smooth, nor does lightning travel in a
`*' straight line." -------------------------------------------------
-- B. Mandelbrot | http://surf.to/pgd.net
_____________________ ____|________ Paul Derbyshire pderbysh@usa.net
Programmer & Humanist|ICQ: 10423848|
^ permalink raw reply [flat|nested] 264+ messages in thread
* Re: Question about compiler-supplied assignment and copy with egcs.
1999-02-28 1:10 ` Paul Derbyshire
@ 1999-02-28 2:51 ` Tudor Hulubei
[not found] ` < 14041.8114.947193.298212@hal.ttlc.net >
1999-02-28 22:53 ` Tudor Hulubei
1999-02-28 22:53 ` Paul Derbyshire
1999-03-01 2:28 ` Gerald Pfeifer
2 siblings, 2 replies; 264+ messages in thread
From: Tudor Hulubei @ 1999-02-28 2:51 UTC (permalink / raw)
To: Paul Derbyshire, egcs
On Sunday, 28 February 1999, Paul Derbyshire wrote:
> Why don't they merge each new feature in as they get it finished, instead
> of making everyone wait until they can get their Webcams set up and have a
> ribbon-cutting ceremony in live video streaming? :P
Maybe because we need stable compilers/libraries? Maybe because the
old and new versions of libstdc++ cannot be mixed at will? [A few
other obvious maybes deleted...].
Why don't you use your brain before bothering this list with such dumb
questions?
This list used to be of very high quality before you came. Call me a
fascist, but if I were the administrator of this list, I would ban you
access to it. You are annoying too many people.
> As for the URL, I found the mailing list address there and (because I can
> potentially help out) sent a subscribe request, but the list server failed
> to respond in any way whatsoever. All I did was put "subscribe Paul
> Derbyshire" in the subject and in the first line of the body (since list
> servers vary a great deal and sometimes expect a command in the subject,
> sometimes in the body). There should have been SOME response, even if only
> a bounce of some kind or a list server error message.
>
> As near as I can tell, I've either
> 1. Been silently subscribed to a low volume mailing list, with no
> welcome message, and where even the submit addresses and ways to
> filter the messages to their own folder will have to wait until I
> actually receive a posting through it, or else
> 2. Something was wrong with my request and the list server error
> message bounced or otherwise failed to get through, which is
> highly improbable since as always I used valid From: and Reply-To:
> addresses, no munging, or else
> 3. The list server has a bug, or else
> 4. The list server is down.
>
> Does anyone have any information about which of these is the case? I need
> to know to tailor my course of action; 1 invovles waiting and seeing, 2
> involves cajoling list server syntax information out of somebody, and 3 and
> 4 involve the list server's Someone In Charge being notified about the
> error so they can Fix It and possibly resubmitting the subscription request.
Is this the Introduction of your PhD thesis in "Mailing Lists
Behavior"? Could you please describe in greate detail the topology of
your kitchen or other useless crap nobody on this list cares to know?
> Note: I have allowed adequate time for a response to be generated and
> received, namely over 4 hours. Since I don't live in Upper Moldovia or
> anywhere similarly exotic,
I happen to be a Romanian, and I find your comment about Moldavia
offending (yes, it is spelled Moldavia, not Moldovia, but I won't
insist - you have more serious problems than that). If you didn't
realise by now that there is a good chance of someone taking offence
at this kind of comment then you don't deserve to be on the net in the
first place.
> that should be plenty of time to receive either a response or a
> 4-hour-warning bounce if Something Went Wrong.
Have you notified the White House?
Tudor
^ permalink raw reply [flat|nested] 264+ messages in thread
[parent not found: < 14041.8114.947193.298212@hal.ttlc.net >]
* Re: Question about compiler-supplied assignment and copy with egcs.
[not found] ` < 14041.8114.947193.298212@hal.ttlc.net >
@ 1999-02-28 4:36 ` Paul Derbyshire
1999-02-28 22:53 ` Paul Derbyshire
0 siblings, 1 reply; 264+ messages in thread
From: Paul Derbyshire @ 1999-02-28 4:36 UTC (permalink / raw)
To: egcs
At 05:51 AM 2/28/99 -0500, you wrote:
>Maybe because we need stable compilers/libraries? Maybe because the
>old and new versions of libstdc++ cannot be mixed at will? [A few
>other obvious maybes deleted...].
So much for using the language features of C++ to build a modular and
flexible design where, because of encapsulation and interfaces and
implementation-hiding, you can upgrade in a modular way, hm?
>Is this the Introduction of your PhD thesis in "Mailing Lists
>Behavior"?
[Additional excessive sarcastic verbiage deleted]
No, it's my request to know what the devil is going on with that particular
list server so that I know whether I need to resubmit the request or not,
or whatever. And so that if the list server is misbehaving, someone becomes
aware of this fact that can do something about it.
[More garbage deleted]
Well, ex-CUUSE-me. I invented a name and it happened to resemble that of a
real place. Big whup. What's more, it's a fact that in less developed areas
internet connectivity tends to be slow and iffy, which isn't to be taken as
an insult against a region and certainly not as an insult against a
culture, but merely a statement of fact about the infrastructure quality in
certain places.
Say, is it just my imagination or is there an uncommonly large
concentration of thin-skinned, humor and sarcasm impaired individuals in
this forum?
>Have you notified the White House?
What the hell would they have to do with anything? Nothing, as long as the
problem with the mail server doesn't impair their ability to eavesdrop on
every email sent on Earth significantly...
--
.*. "Clouds are not spheres, mountains are not cones, coastlines are not
-() < circles, and bark is not smooth, nor does lightning travel in a
`*' straight line." -------------------------------------------------
-- B. Mandelbrot | http://surf.to/pgd.net
_____________________ ____|________ Paul Derbyshire pderbysh@usa.net
Programmer & Humanist|ICQ: 10423848|
^ permalink raw reply [flat|nested] 264+ messages in thread
* Re: Question about compiler-supplied assignment and copy with egcs.
1999-02-28 4:36 ` Paul Derbyshire
@ 1999-02-28 22:53 ` Paul Derbyshire
0 siblings, 0 replies; 264+ messages in thread
From: Paul Derbyshire @ 1999-02-28 22:53 UTC (permalink / raw)
To: egcs
At 05:51 AM 2/28/99 -0500, you wrote:
>Maybe because we need stable compilers/libraries? Maybe because the
>old and new versions of libstdc++ cannot be mixed at will? [A few
>other obvious maybes deleted...].
So much for using the language features of C++ to build a modular and
flexible design where, because of encapsulation and interfaces and
implementation-hiding, you can upgrade in a modular way, hm?
>Is this the Introduction of your PhD thesis in "Mailing Lists
>Behavior"?
[Additional excessive sarcastic verbiage deleted]
No, it's my request to know what the devil is going on with that particular
list server so that I know whether I need to resubmit the request or not,
or whatever. And so that if the list server is misbehaving, someone becomes
aware of this fact that can do something about it.
[More garbage deleted]
Well, ex-CUUSE-me. I invented a name and it happened to resemble that of a
real place. Big whup. What's more, it's a fact that in less developed areas
internet connectivity tends to be slow and iffy, which isn't to be taken as
an insult against a region and certainly not as an insult against a
culture, but merely a statement of fact about the infrastructure quality in
certain places.
Say, is it just my imagination or is there an uncommonly large
concentration of thin-skinned, humor and sarcasm impaired individuals in
this forum?
>Have you notified the White House?
What the hell would they have to do with anything? Nothing, as long as the
problem with the mail server doesn't impair their ability to eavesdrop on
every email sent on Earth significantly...
--
.*. "Clouds are not spheres, mountains are not cones, coastlines are not
-() < circles, and bark is not smooth, nor does lightning travel in a
`*' straight line." -------------------------------------------------
-- B. Mandelbrot | http://surf.to/pgd.net
_____________________ ____|________ Paul Derbyshire pderbysh@usa.net
Programmer & Humanist|ICQ: 10423848|
^ permalink raw reply [flat|nested] 264+ messages in thread
* Re: Question about compiler-supplied assignment and copy with egcs.
1999-02-28 2:51 ` Tudor Hulubei
[not found] ` < 14041.8114.947193.298212@hal.ttlc.net >
@ 1999-02-28 22:53 ` Tudor Hulubei
1 sibling, 0 replies; 264+ messages in thread
From: Tudor Hulubei @ 1999-02-28 22:53 UTC (permalink / raw)
To: Paul Derbyshire, egcs
On Sunday, 28 February 1999, Paul Derbyshire wrote:
> Why don't they merge each new feature in as they get it finished, instead
> of making everyone wait until they can get their Webcams set up and have a
> ribbon-cutting ceremony in live video streaming? :P
Maybe because we need stable compilers/libraries? Maybe because the
old and new versions of libstdc++ cannot be mixed at will? [A few
other obvious maybes deleted...].
Why don't you use your brain before bothering this list with such dumb
questions?
This list used to be of very high quality before you came. Call me a
fascist, but if I were the administrator of this list, I would ban you
access to it. You are annoying too many people.
> As for the URL, I found the mailing list address there and (because I can
> potentially help out) sent a subscribe request, but the list server failed
> to respond in any way whatsoever. All I did was put "subscribe Paul
> Derbyshire" in the subject and in the first line of the body (since list
> servers vary a great deal and sometimes expect a command in the subject,
> sometimes in the body). There should have been SOME response, even if only
> a bounce of some kind or a list server error message.
>
> As near as I can tell, I've either
> 1. Been silently subscribed to a low volume mailing list, with no
> welcome message, and where even the submit addresses and ways to
> filter the messages to their own folder will have to wait until I
> actually receive a posting through it, or else
> 2. Something was wrong with my request and the list server error
> message bounced or otherwise failed to get through, which is
> highly improbable since as always I used valid From: and Reply-To:
> addresses, no munging, or else
> 3. The list server has a bug, or else
> 4. The list server is down.
>
> Does anyone have any information about which of these is the case? I need
> to know to tailor my course of action; 1 invovles waiting and seeing, 2
> involves cajoling list server syntax information out of somebody, and 3 and
> 4 involve the list server's Someone In Charge being notified about the
> error so they can Fix It and possibly resubmitting the subscription request.
Is this the Introduction of your PhD thesis in "Mailing Lists
Behavior"? Could you please describe in greate detail the topology of
your kitchen or other useless crap nobody on this list cares to know?
> Note: I have allowed adequate time for a response to be generated and
> received, namely over 4 hours. Since I don't live in Upper Moldovia or
> anywhere similarly exotic,
I happen to be a Romanian, and I find your comment about Moldavia
offending (yes, it is spelled Moldavia, not Moldovia, but I won't
insist - you have more serious problems than that). If you didn't
realise by now that there is a good chance of someone taking offence
at this kind of comment then you don't deserve to be on the net in the
first place.
> that should be plenty of time to receive either a response or a
> 4-hour-warning bounce if Something Went Wrong.
Have you notified the White House?
Tudor
^ permalink raw reply [flat|nested] 264+ messages in thread
* Re: Question about compiler-supplied assignment and copy with egcs.
1999-02-28 1:10 ` Paul Derbyshire
1999-02-28 2:51 ` Tudor Hulubei
@ 1999-02-28 22:53 ` Paul Derbyshire
1999-03-01 2:28 ` Gerald Pfeifer
2 siblings, 0 replies; 264+ messages in thread
From: Paul Derbyshire @ 1999-02-28 22:53 UTC (permalink / raw)
To: egcs
At 11:55 PM 2/27/99 -0800, you wrote:
>That's because the libstdc++ rewrite isn't part of egcs yet, and won't be
>until it's complete. Please refer to the URL I sent you before.
Why don't they merge each new feature in as they get it finished, instead
of making everyone wait until they can get their Webcams set up and have a
ribbon-cutting ceremony in live video streaming? :P
As for the URL, I found the mailing list address there and (because I can
potentially help out) sent a subscribe request, but the list server failed
to respond in any way whatsoever. All I did was put "subscribe Paul
Derbyshire" in the subject and in the first line of the body (since list
servers vary a great deal and sometimes expect a command in the subject,
sometimes in the body). There should have been SOME response, even if only
a bounce of some kind or a list server error message.
As near as I can tell, I've either
1. Been silently subscribed to a low volume mailing list, with no
welcome message, and where even the submit addresses and ways to
filter the messages to their own folder will have to wait until I
actually receive a posting through it, or else
2. Something was wrong with my request and the list server error
message bounced or otherwise failed to get through, which is
highly improbable since as always I used valid From: and Reply-To:
addresses, no munging, or else
3. The list server has a bug, or else
4. The list server is down.
Does anyone have any information about which of these is the case? I need
to know to tailor my course of action; 1 invovles waiting and seeing, 2
involves cajoling list server syntax information out of somebody, and 3 and
4 involve the list server's Someone In Charge being notified about the
error so they can Fix It and possibly resubmitting the subscription request.
Note: I have allowed adequate time for a response to be generated and
received, namely over 4 hours. Since I don't live in Upper Moldovia or
anywhere similarly exotic, that should be plenty of time to receive either
a response or a 4-hour-warning bounce if Something Went Wrong.
--
.*. "Clouds are not spheres, mountains are not cones, coastlines are not
-() < circles, and bark is not smooth, nor does lightning travel in a
`*' straight line." -------------------------------------------------
-- B. Mandelbrot | http://surf.to/pgd.net
_____________________ ____|________ Paul Derbyshire pderbysh@usa.net
Programmer & Humanist|ICQ: 10423848|
^ permalink raw reply [flat|nested] 264+ messages in thread
* Re: Question about compiler-supplied assignment and copy with egcs.
1999-02-28 1:10 ` Paul Derbyshire
1999-02-28 2:51 ` Tudor Hulubei
1999-02-28 22:53 ` Paul Derbyshire
@ 1999-03-01 2:28 ` Gerald Pfeifer
1999-03-31 23:46 ` Gerald Pfeifer
2 siblings, 1 reply; 264+ messages in thread
From: Gerald Pfeifer @ 1999-03-01 2:28 UTC (permalink / raw)
To: Paul Derbyshire; +Cc: egcs
On Sun, 28 Feb 1999, Paul Derbyshire wrote:
> [libstdc++ mailing list]
> As near as I can tell, I've either
> [...]
> Does anyone have any information about which of these is the case?
Non of the above. Addition/removal is not automatic.
Gerald
--
Gerald "Jerry" pfeifer@dbai.tuwien.ac.at http://www.dbai.tuwien.ac.at/~pfeifer/
^ permalink raw reply [flat|nested] 264+ messages in thread
* Re: Question about compiler-supplied assignment and copy with egcs.
1999-02-27 23:55 ` Jason Merrill
[not found] ` < u9yalj7yin.fsf@yorick.cygnus.com >
@ 1999-02-28 22:53 ` Jason Merrill
1 sibling, 0 replies; 264+ messages in thread
From: Jason Merrill @ 1999-02-28 22:53 UTC (permalink / raw)
To: Paul Derbyshire; +Cc: egcs
>>>>> Paul Derbyshire <pderbysh@usa.net> writes:
> At 10:45 PM 2/25/99 -0800, you wrote:
>> The libstdc++ rewrite already has a version of valarray...
> That's strange, because the egcs zip I got from the Simtel DJGPP tree in
> v2beta contains no such file as lang/cxx/valarray.
That's because the libstdc++ rewrite isn't part of egcs yet, and won't be
until it's complete. Please refer to the URL I sent you before.
Jason
^ permalink raw reply [flat|nested] 264+ messages in thread
* Re: Question about compiler-supplied assignment and copy with egcs.
1999-02-25 22:45 ` Jason Merrill
[not found] ` < u91zjdirxx.fsf@yorick.cygnus.com >
[not found] ` <3.0.6.32.19990228000118.00923340.cygnus.egcs@pop.globalserve.net>
@ 1999-02-28 22:53 ` Jason Merrill
2 siblings, 0 replies; 264+ messages in thread
From: Jason Merrill @ 1999-02-28 22:53 UTC (permalink / raw)
To: Paul Derbyshire; +Cc: egcs
>>>>> Paul Derbyshire <pderbysh@usa.net> writes:
> With that in mind, I could probably supply a draft of a working valarray
> header that will do as the standard requests and avoid some temporaries
> with argument passing and return.
The libstdc++ rewrite already has a version of valarray, so it might be
more useful for you to work on improving that one. If you're interested in
helping with the library, you should join the libstdc++ v3 mailing list.
See
http://sourceware.cygnus.com/libstdc++/
for more info.
Jason
^ permalink raw reply [flat|nested] 264+ messages in thread
* Re: Question about compiler-supplied assignment and copy with egcs.
1999-02-24 16:27 ` Question about compiler-supplied assignment and copy with egcs Mike Stump
[not found] ` < 199902250026.QAA04615@kankakee.wrs.com >
[not found] ` <3.0.6.32.19990226013110.0083c530.cygnus.egcs@pop.globalserve.net>
@ 1999-02-28 22:53 ` Mike Stump
2 siblings, 0 replies; 264+ messages in thread
From: Mike Stump @ 1999-02-28 22:53 UTC (permalink / raw)
To: egcs, pderbysh
> Date: Wed, 24 Feb 1999 06:19:53 -0500
> To: egcs@egcs.cygnus.com
> From: Paul Derbyshire <pderbysh@usa.net>
> Q: If egcs is allowed to supply the assignment operator and copy
> constructor for a "plain old data" type, will they be generally more
> efficient than user supplied versions?
This is a reasonable assumption. If it is ever false, I think a
performance enhancement request is reasonable.
^ permalink raw reply [flat|nested] 264+ messages in thread
* Removal of V2 code
@ 2000-11-19 13:03 ` Mark Mitchell
2000-11-19 17:10 ` Geoff Keating
2000-11-20 0:41 ` Andrew Cagney
0 siblings, 2 replies; 264+ messages in thread
From: Mark Mitchell @ 2000-11-19 13:03 UTC (permalink / raw)
To: gcc
I plan on doing a `cvs remove' on the V2 sources, and removing the
configury bits for V2 at the end of next week as things seem to be
settling OK with V3. (There are still some AIX issues with V3, but
they seem to be well on the path to resolution.)
If you have objections to this plan (i.e., you need the V2 sources to
continue your work), you should:
- Try hard to get V3 working on your platform.
- Complain to me. Explain why you can't switch to V3, and what
you need in order to make that happen.
We can keep V2 in the tree for a bit longer, if we need to, but you'll
have to come up with a good reason... :-)
--
Mark Mitchell mark@codesourcery.com
CodeSourcery, LLC http://www.codesourcery.com
^ permalink raw reply [flat|nested] 264+ messages in thread
* Re: Removal of V2 code
2000-11-19 13:03 ` Removal of V2 code Mark Mitchell
@ 2000-11-19 17:10 ` Geoff Keating
[not found] ` <Mark>
` (3 more replies)
2000-11-20 0:41 ` Andrew Cagney
1 sibling, 4 replies; 264+ messages in thread
From: Geoff Keating @ 2000-11-19 17:10 UTC (permalink / raw)
To: Mark Mitchell; +Cc: gcc
Mark Mitchell <mark@codesourcery.com> writes:
> I plan on doing a `cvs remove' on the V2 sources, and removing the
> configury bits for V2 at the end of next week as things seem to be
> settling OK with V3. (There are still some AIX issues with V3, but
> they seem to be well on the path to resolution.)
>
> If you have objections to this plan (i.e., you need the V2 sources to
> continue your work), you should:
>
> - Try hard to get V3 working on your platform.
>
> - Complain to me. Explain why you can't switch to V3, and what
> you need in order to make that happen.
>
> We can keep V2 in the tree for a bit longer, if we need to, but you'll
> have to come up with a good reason... :-)
The embedded platforms (*-elf, powerpc-eabi*, *-coff) don't work yet with V3; I
don't believe anyone, certainly not at Red Hat, will be able to fix
this until next month; we don't have time.
I don't know what the vxworks status is, but I'd bet it doesn't work either.
I don't know what the Cygwin status is. It may work.
Do HPUX, IRIX, BeOS work?
Does SunOS (not Solaris) work? I think we still have SunOS customers.
At Red Hat we have not switched over to V3, primarily for this reason.
Such a change will make it difficult for us to merge patches back into
the FSF sources, because we would not be able to test them. We would
end up committing patches saying "have tested with C++ only on our
internal sources, due to no libstdc++ support in the public tree".
Already you can see this effect; you will notice that the automated
tester is no longer testing C++ because the platform it tests with
is not supported by libstdc++-v3.
I believe this schedule is far too quick. We have only had
libstdc++-v3 as the default for a few weeks, there are
known problems, these problems will take some time to fix.
I would wait 6 months and ask again.
--
- Geoffrey Keating <geoffk@geoffk.org>
^ permalink raw reply [flat|nested] 264+ messages in thread
[parent not found: <Mark>]
* Re: Removal of V2 code
2000-11-19 17:10 ` Geoff Keating
[not found] ` <Mark>
@ 2000-11-19 17:24 ` Christopher Faylor
2000-11-19 17:56 ` Mark Mitchell
2000-11-20 2:54 ` Franz Sirl
3 siblings, 0 replies; 264+ messages in thread
From: Christopher Faylor @ 2000-11-19 17:24 UTC (permalink / raw)
To: Geoff Keating; +Cc: Mark Mitchell, gcc
On Sun, Nov 19, 2000 at 05:10:33PM -0800, Geoff Keating wrote:
>Mark Mitchell <mark@codesourcery.com> writes:
>> I plan on doing a `cvs remove' on the V2 sources, and removing the
>> configury bits for V2 at the end of next week as things seem to be
>> settling OK with V3. (There are still some AIX issues with V3, but
>> they seem to be well on the path to resolution.)
>>
>> If you have objections to this plan (i.e., you need the V2 sources to
>> continue your work), you should:
>>
>> - Try hard to get V3 working on your platform.
>>
>> - Complain to me. Explain why you can't switch to V3, and what
>> you need in order to make that happen.
>>
>> We can keep V2 in the tree for a bit longer, if we need to, but you'll
>> have to come up with a good reason... :-)
>
>The embedded platforms (*-elf, powerpc-eabi*, *-coff) don't work yet with V3; I
>don't believe anyone, certainly not at Red Hat, will be able to fix
>this until next month; we don't have time.
>
>I don't know what the vxworks status is, but I'd bet it doesn't work either.
>
>I don't know what the Cygwin status is. It may work.
Cygwin should be ok.
cgf
^ permalink raw reply [flat|nested] 264+ messages in thread
* Re: Removal of V2 code
2000-11-19 17:10 ` Geoff Keating
[not found] ` <Mark>
2000-11-19 17:24 ` Christopher Faylor
@ 2000-11-19 17:56 ` Mark Mitchell
2000-11-19 20:24 ` Geoff Keating
2000-11-20 2:54 ` Franz Sirl
3 siblings, 1 reply; 264+ messages in thread
From: Mark Mitchell @ 2000-11-19 17:56 UTC (permalink / raw)
To: geoffk; +Cc: gcc
>>>>> "Geoff" == Geoff Keating <geoffk@geoffk.org> writes:
Geoff> The embedded platforms (*-elf, powerpc-eabi*, *-coff) don't
Geoff> work yet with V3; I don't believe anyone, certainly not at
Geoff> Red Hat, will be able to fix this until next month; we
Geoff> don't have time.
Put simply, I don't think that is an issue for the FSF release. None
of these platforms are on primary release criteria list. If Red Hat
has customers that need support for these platforms, then Red Hat will
presumably provide implement support for V3.
Geoff> Do HPUX, IRIX, BeOS work?
I don't know about HPUX or BeOS. IRIX works.
Geoff> Does SunOS (not Solaris) work? I think we still have SunOS
Geoff> customers.
I don't know about SunOS either. Kaveh?
I don't think Red Hat's customer list is relevant, except as some sort
of barometer of who's out there. But, we already have release
criteria, and I believe that V3 works on all of those platforms except
for HPUX (for which we have no target triplet in the critera; I wonder
what version we're talking about here) and AIX (being worked on,
expected to work soon).
Doing the porting work really isn't hard and it's getting easier the
more platforms we do. Any ELF platform with a reasonably compliant C
library should be a snap. I don't know how conformant newlib is; it
might be that you have to tweak some configuration bits to make that
work. It's a day or two's work, a week tops. And once it works with
newlib somewhere, it will probably work everywhere; the amount of
target-specific code in V3 is tiny, and there are generic C versions
for everything.
Geoff> Such a change will make it difficult for us to merge
Geoff> patches back into the FSF sources, because we would not be
Geoff> able to test them.
I should think that you could find a stock i686-pc-linux-gnu system to
test platform-independent changes on. :-) And for most chips (MIPS,
PowerPC, etc.) I bet you have non-embedded alternatives to test
back-end changes on. There may be rare chips for which this is not
possible, but there is likely either no C++ support for those chips at
all in the FSF tree, or there is a non-embedded target for which you
simply do not have access to appropriate hardware. In that case, I'm
sure that either someone will provide you access to the hardware, test
your patch themselves, or that you can go ahead and check it in, and
let the people with the right hardware check out what happens.
Any changes you make in your internal tree need to be tested in the
public tree, using the same configuration that everyone else uses,
before you check them in anyhow. It would be wrong to test a C++
patch with V2 and check it in without testing it with V3, even if V2
were still in the tree, since V3 is whatever everyone else is using.
99% of all changes coming from Red Hat are to code where there are not
likely to be any merge issues depending on whether V2 or V3 is in use.
It's going to be `cvs diff' and `patch' independent of the V2 vs. V3
issues. That's the procedure for testing a patch from your internal
tree anyhow; how does the absence of V2 in the FSF sources make this
harder?
Is there some deeper technical issue I'm not seeing?
Geoff> Already you can see this effect; you will notice that the
Geoff> automated tester is no longer testing C++ because the
Geoff> platform it tests with is not supported by libstdc++-v3.
The regression tester is something you (quite generously!) decided to
set up. It would be great if someone could port V3 to that platform.
You could also choose a different target, which would allow us to
continue getting the regression-testing reports for C++, at the
expense of testing a different chip.
Geoff> I believe this schedule is far too quick. We have only had
Geoff> libstdc++-v3 as the default for a few weeks, there are
Geoff> known problems, these problems will take some time to fix.
Geoff> I would wait 6 months and ask again.
You make it sound as though the switch was a surprise. :-)
The switch to V3, and to the new ABI, and the removal of the previous
versions of these things was announced as long as a year ago, and both
V3 and the new ABI have been in the tree for many months.
If people who build tools based on or around G++ haven't prepared
themselves for this transition, that was probably a mistake.
--
Mark Mitchell mark@codesourcery.com
CodeSourcery, LLC http://www.codesourcery.com
^ permalink raw reply [flat|nested] 264+ messages in thread
* Re: Removal of V2 code
2000-11-19 17:56 ` Mark Mitchell
@ 2000-11-19 20:24 ` Geoff Keating
2000-11-19 21:52 ` Mark Mitchell
0 siblings, 1 reply; 264+ messages in thread
From: Geoff Keating @ 2000-11-19 20:24 UTC (permalink / raw)
To: mark; +Cc: gcc
> From: Mark Mitchell <mark@codesourcery.com>
> Date: Sun, 19 Nov 2000 17:56:08 -0800
> >>>>> "Geoff" == Geoff Keating <geoffk@geoffk.org> writes:
>
> Geoff> The embedded platforms (*-elf, powerpc-eabi*, *-coff) don't
> Geoff> work yet with V3; I don't believe anyone, certainly not at
> Geoff> Red Hat, will be able to fix this until next month; we
> Geoff> don't have time.
>
> Put simply, I don't think that is an issue for the FSF release. None
> of these platforms are on primary release criteria list.
I didn't understand this part, and so I couldn't understand much of
the rest of your mail either.
What does the release or the release criteria have to do with it? I
was objecting to the deletion of libstdc++-v2 from the development
tree, on the grounds that this would make it harder to do development.
I would have no objection to its deletion from the release branch, if
it's not needed for the release.
I don't really care. I just wanted to try to avoid a possibly
annoying mistake. If you really think you're doing the right thing,
go ahead.
> I should think that you could find a stock i686-pc-linux-gnu system to
> test platform-independent changes on. :-) And for most chips (MIPS,
> PowerPC, etc.) I bet you have non-embedded alternatives to test
> back-end changes on. There may be rare chips for which this is not
> possible, but there is likely either no C++ support for those chips at
> all in the FSF tree, or there is a non-embedded target for which you
> simply do not have access to appropriate hardware. In that case, I'm
> sure that either someone will provide you access to the hardware, test
> your patch themselves, or that you can go ahead and check it in, and
> let the people with the right hardware check out what happens.
The counter-example here is i960; there are no non-embedded
alternatives (the choices are -coff, -elf, and -vxworks), and it does
have C++ support.
--
- Geoffrey Keating <geoffk@geoffk.org>
^ permalink raw reply [flat|nested] 264+ messages in thread
* Re: Removal of V2 code
2000-11-19 20:24 ` Geoff Keating
@ 2000-11-19 21:52 ` Mark Mitchell
2000-11-19 22:12 ` Geoff Keating
0 siblings, 1 reply; 264+ messages in thread
From: Mark Mitchell @ 2000-11-19 21:52 UTC (permalink / raw)
To: geoffk, geoffk; +Cc: gcc
>>>>> "Geoff" == Geoff Keating <geoffk@geoffk.org> writes:
>> Put simply, I don't think that is an issue for the FSF
>> release. None of these platforms are on primary release
>> criteria list.
Geoff> I didn't understand this part, and so I couldn't understand
Geoff> much of the rest of your mail either.
Sorry. I was referencing the list of platforms that the SC has
decided are primary targets for GCC 3.0; none of those targets are
embedded systems.
Geoff> What does the release or the release criteria have to do
Geoff> with it? I was objecting to the deletion of libstdc++-v2
Geoff> from the development tree, on the grounds that this would
Geoff> make it harder to do development. I would have no
Geoff> objection to its deletion from the release branch, if it's
Geoff> doing the right thing, go ahead.
The problem is that these things aren't entirely orthogonal. The ABI,
the library version, and the performance of the compiler are all
intertwined. It's not just the question of dragging the sources
around; it's more complex than that.
There's also the issue that port maintainers need to invest the effort
to switch to V3 because that's what we're going to support going
forward. I'd really like to get a handle on whether that porting
effort is truly difficult or not. (It wasn't difficult on the
platforms I worked on, but, on the other hand, it has been pointed out
that those were both SVR4-ish platforms.)
Geoff> The counter-example here is i960; there are no non-embedded
Geoff> alternatives (the choices are -coff, -elf, and -vxworks),
Geoff> and it does have C++ support.
OK. But I still don't really understand the scenario you're talking
about. It seems to me there are a few cases:
- Change to the i960 back-end in your tree. You can test in your
tree, and you can test C/Fortran/ObjC in the public tree. By
hypothesis, the public tree doesn't have i960 C++ support any
more, since the scenario we're talking about is one where we
don't have V2 in the public tree, and V3 doesn't work on the
i960. So, nobody can complain about your change breaking
i960 C++.
- Change to the C++ front-end in your tree. Likely this change
is not i960-specific. You can test with another chip. If it
*is* i960 specific, then you're in the same boat as above:
there's no i960 C++ support anyhow.
So, I'm afraid I still don't understand the testing argument.
Is there anyone out there who is willing to try a newlib port of V3?
Is it possible to build newlib on an i686-pc-linux-gnu box, using it
natively, instead of glibc? If so, would you tell me how to do this?
Or, alternatively, a way to build a cross-compiler plus simulator so
that I can test a newlib configuration on my PC?
If you will tell me how to build all the pieces, I will try to figure
out how to make V3 work in that environment. If I were to make that
work, would that reduce your objection to removing the V2 sources?
--
Mark Mitchell mark@codesourcery.com
CodeSourcery, LLC http://www.codesourcery.com
^ permalink raw reply [flat|nested] 264+ messages in thread
* Re: Removal of V2 code
2000-11-19 21:52 ` Mark Mitchell
@ 2000-11-19 22:12 ` Geoff Keating
2000-11-19 22:33 ` Mark Mitchell
` (2 more replies)
0 siblings, 3 replies; 264+ messages in thread
From: Geoff Keating @ 2000-11-19 22:12 UTC (permalink / raw)
To: mark; +Cc: gcc
> From: Mark Mitchell <mark@codesourcery.com>
> Date: Sun, 19 Nov 2000 21:51:57 -0800
> Or, alternatively, a way to build a cross-compiler plus simulator so
> that I can test a newlib configuration on my PC?
Sure.
I have a script for this, which the automated tester uses. Just
change TOPDIR to somewhere on your machine.
[The complexity of this script is why people keep agitating
for a combined tree.]
--
- Geoffrey Keating <geoffk@geoffk.org>
===File ~/buildobjs.sh======================================
#!/usr/unsupported/bin/bash
set -x
TARGET=powerpc-eabisim
CVSROOT_BIN=':pserver:anoncvs@anoncvs.cygnus.com:/cvs/src'
CVSROOT_GCC=':pserver:anoncvs@anoncvs.cygnus.com:/cvs/gcc'
TOPDIR=/sloth/delay/tbox
CVS_DIR=$TOPDIR/cvs-objs
SRC_XC=$CVS_DIR/gcc
SRC_BIN=$CVS_DIR/binutils
SRC_DIR=$TOPDIR/src-objs
INSTALL_DIR=$TOPDIR/objs
OBJ_DIR=$TOPDIR/build-objs
SCRIPT_DIR=$HOME/tbox
rm -rf $OBJ_DIR $INSTALL_DIR $SRC_DIR
mkdir $OBJ_DIR $INSTALL_DIR $SRC_DIR || exit 1
mkdir $OBJ_DIR/src $OBJ_DIR/test || exit 1
mkdir -p $SRC_XC $SRC_BIN || exit 1
PATH=/bin:/usr/bin
PATH=$INSTALL_DIR/bin:$TOPDIR/boot/bin:$PATH
export PATH
cd $SRC_XC || exit 1
cvs -Q -d $CVSROOT_GCC co egcs-full || exit 1
cd $SRC_BIN || exit 1
cvs -Q -d $CVSROOT_BIN co binutils gdb newlib dejagnu || exit 1
# the order here is important, the GCC files are the master copy.
cd $SRC_BIN/src || exit 1
find . -print | cpio -pdlm $SRC_DIR || exit 1
cd $SRC_XC/egcs || exit 1
find . -print | cpio -pdlmu $SRC_DIR || exit 1
cd $SRC_DIR || exit 1
[ -x contrib/gcc_update ] && contrib/gcc_update --touch > /dev/null
cd $OBJ_DIR/src || exit 1
$SRC_DIR/configure --prefix=$INSTALL_DIR --target=$TARGET || exit 1
make all || exit 1
make install || exit 1
DEJAGNU=/home/s1/cygnus/dejagnu/site.exp
export DEJAGNU
cd $OBJ_DIR/test || exit 1
$SRC_XC/egcs/configure --target=$TARGET \
--prefix=$INSTALL_DIR --enable-checking=misc,gc,tree || exit 1
make || exit 1
make -k check-gcc check-target-libio check-target-libstdc++
exit 0
============================================================
===File ~/lib/site.exp======================================
# Needed for isnative.
load_lib "framework.exp"
# Make sure we look in the right place for the board description files.
if ![info exists boards_dir] {
set boards_dir {}
}
lappend boards_dir "/home/geoffk/lib/dejagnu"
#
# If we're testing GCC, G++ or GDB, then we want to run on all the
# available targets. Otherwise, just test the first one.
#
if ![info exists tool] {
set run_multiple_targets 0;
} elseif { $tool == "g++" || $tool == "gcc" || $tool == "gdb" || $tool == "libg++" || $tool == "libstdc++" || $tool == "libio" || $tool == "binutils" } {
set run_multiple_targets 1;
} else {
set run_multiple_targets 0;
}
verbose "Global Config File: target_triplet is $target_triplet" 2
global target_list
case "$target_triplet" in {
{ "native" } { set target_list "unix" }
{ "powerpc-*-eabi" } { set target_list { powerpc-sim } }
{ "powerpc-*-eabisim" } { set target_list { powerpc-sim } }
}
#
# If the tool under test won't really benefit from running on multiple
# targets, then don't do so.
#
if { ! $run_multiple_targets } {
set target_list [list [lindex $target_list 0]];
}
============================================================
^ permalink raw reply [flat|nested] 264+ messages in thread
* Re: Removal of V2 code
2000-11-19 22:12 ` Geoff Keating
@ 2000-11-19 22:33 ` Mark Mitchell
2000-11-20 1:07 ` Mark Mitchell
2000-11-21 10:56 ` Mark Mitchell
2 siblings, 0 replies; 264+ messages in thread
From: Mark Mitchell @ 2000-11-19 22:33 UTC (permalink / raw)
To: geoffk, geoffk; +Cc: gcc
Youch!
OK, I'll try that script soon.
Tomorrow is my wife's birthday, so not until Tuesday at the soonest...
Thanks!
--
Mark Mitchell mark@codesourcery.com
CodeSourcery, LLC http://www.codesourcery.com
^ permalink raw reply [flat|nested] 264+ messages in thread
* Re: Removal of V2 code
2000-11-19 22:12 ` Geoff Keating
2000-11-19 22:33 ` Mark Mitchell
@ 2000-11-20 1:07 ` Mark Mitchell
2000-11-20 2:11 ` Geoff Keating
2000-11-21 10:56 ` Mark Mitchell
2 siblings, 1 reply; 264+ messages in thread
From: Mark Mitchell @ 2000-11-20 1:07 UTC (permalink / raw)
To: geoffk, geoffk; +Cc: gcc
Geoff --
Where do I but the site.exp you sent? In place of the
DEJAGNU=/home/s1/cygnus/dejagnu/site.exp
file?
Thanks,
--
Mark Mitchell mark@codesourcery.com
CodeSourcery, LLC http://www.codesourcery.com
^ permalink raw reply [flat|nested] 264+ messages in thread
* Re: Removal of V2 code
2000-11-20 1:07 ` Mark Mitchell
@ 2000-11-20 2:11 ` Geoff Keating
0 siblings, 0 replies; 264+ messages in thread
From: Geoff Keating @ 2000-11-20 2:11 UTC (permalink / raw)
To: mark; +Cc: gcc
> From: Mark Mitchell <mark@codesourcery.com>
> Date: Mon, 20 Nov 2000 01:07:11 -0800
> Geoff --
>
> Where do I but the site.exp you sent? In place of the
>
> DEJAGNU=/home/s1/cygnus/dejagnu/site.exp
>
> file?
Yes.
You only have to do this if you want to do testing and might forget to
enter --target_board:
make check RUNTESTFLAGS=--target_board=powerpc-sim
--
- Geoffrey Keating <geoffk@geoffk.org>
^ permalink raw reply [flat|nested] 264+ messages in thread
* Re: Removal of V2 code
2000-11-19 22:12 ` Geoff Keating
2000-11-19 22:33 ` Mark Mitchell
2000-11-20 1:07 ` Mark Mitchell
@ 2000-11-21 10:56 ` Mark Mitchell
2000-11-21 12:20 ` Benjamin Kosnik
2000-11-21 12:37 ` Geoff Keating
2 siblings, 2 replies; 264+ messages in thread
From: Mark Mitchell @ 2000-11-21 10:56 UTC (permalink / raw)
To: geoffk, geoffk; +Cc: gcc, libstdc++
Geoff --
Thanks for the script. It worked great.
The rumors of V2 not working with newlib were greatly exaggerated.
I made absolutely no changes to the source code or configury bits.
Everything built, and most C++ tests passed.
Looking at the C++ tests, there were 40 unexpected failures
(relative to the 3 we see on GNU/Linux). I randomly sampled 5 of the
37 new failures; all of them had the following problem:
/nfs/gandalf/u2/mitchell/dev/powerpc-test/objs/lib/gcc-lib/powerpc-eabisim/2.97/../../../../powerpc-eabisim/lib/libc.a(fdopen.o): In function `_fdopen_r':
/nfs/gandalf/u2/mitchell/dev/powerpc-test/src-objs/newlib/libc/stdio/fdopen.c:67: undefined reference to `fcntl'
The code in question looks like it calls `_fcntl'; I don't know why
the linker reports that as `fcntl'. I don't understand what's causing
that, but it's clear that it has nothing to do with V3. I suspect a
newlib configury issue. Geoff, would you mind tracking this down?
It is possible that there will be runtime issues involving I/O
streams once the `fdopen' issue is resolved; I have no way of knowing
at this time.
There was also one configury oddity in the V3 directory:
/nfs/gandalf/u2/mitchell/dev/powerpc-test/cvs-objs/gcc/egcs/libstdc++-v3/configure: test: =: unary operator expected
This comes from:
AC_DEFUN(AC_LC_MESSAGES,
[if test $ac_cv_header_locale_h = yes; then
AC_CACHE_CHECK([for LC_MESSAGES], ac_cv_val_LC_MESSAGES,
when $ac_cv_header_locale_h is not yet set. I think that the V3
configury bits should check for <locale.h> first. Would a V3 person
please confirm that, and make the necessary change?
Even without this change, however, the configuration completed,
built the library, and mostly worked.
The Steering Committee has pretty much forbidden me from spending
more time working on getting V3 going with newlib. However, I think
it's clear that a volunteer could finish the job with minimal effort.
The first step doesn't even involve understanding anything about V3 --
just figure out what's going on with fcntl.
Thanks,
--
Mark Mitchell mark@codesourcery.com
CodeSourcery, LLC http://www.codesourcery.com
^ permalink raw reply [flat|nested] 264+ messages in thread
* Re: Removal of V2 code
2000-11-21 10:56 ` Mark Mitchell
@ 2000-11-21 12:20 ` Benjamin Kosnik
2000-11-21 12:45 ` Mark Mitchell
2000-11-21 12:37 ` Geoff Keating
1 sibling, 1 reply; 264+ messages in thread
From: Benjamin Kosnik @ 2000-11-21 12:20 UTC (permalink / raw)
To: Mark Mitchell; +Cc: geoffk, geoffk, gcc, libstdc++
> The rumors of V2 not working with newlib were greatly exaggerated.
Err. I think you mean the rumors of V3 working with newlib have been
greatly exaggerated. As a matter of fact, it's been working since about Feb.
I did a cross x86-x-powerpc-elf this Sunday, as a matter of fact, and it
worked well.
> I made absolutely no changes to the source code or configury bits.
...as none should be needed.
> There was also one configury oddity in the V3 directory:
>
> /nfs/gandalf/u2/mitchell/dev/powerpc-test/cvs-objs/gcc/egcs/libstdc++-v3/configure: test: =: unary operator expected
>
> This comes from:
>
> AC_DEFUN(AC_LC_MESSAGES,
> [if test $ac_cv_header_locale_h = yes; then
> AC_CACHE_CHECK([for LC_MESSAGES], ac_cv_val_LC_MESSAGES,
>
> when $ac_cv_header_locale_h is not yet set. I think that the V3
> configury bits should check for <locale.h> first. Would a V3 person
> please confirm that, and make the necessary change?
I'll fix this.
> Even without this change, however, the configuration completed,
> built the library, and mostly worked.
... this has been my experience as well. Nice to see it confirmed.
-benjamin
^ permalink raw reply [flat|nested] 264+ messages in thread
* Re: Removal of V2 code
2000-11-21 12:20 ` Benjamin Kosnik
@ 2000-11-21 12:45 ` Mark Mitchell
0 siblings, 0 replies; 264+ messages in thread
From: Mark Mitchell @ 2000-11-21 12:45 UTC (permalink / raw)
To: bkoz; +Cc: geoffk, geoffk, gcc, libstdc++
>>>>> "Benjamin" == Benjamin Kosnik <bkoz@redhat.com> writes:
>> The rumors of V2 not working with newlib were greatly
>> exaggerated.
Benjamin> Err. I think you mean the rumors of V3 working with
Benjamin> newlib have been greatly exaggerated.
Right.
>> Even without this change, however, the configuration completed,
>> built the library, and mostly worked.
Benjamin> ... this has been my experience as well. Nice to see it
Benjamin> confirmed.
Yup. Nice work setting this stuff up.
--
Mark Mitchell mark@codesourcery.com
CodeSourcery, LLC http://www.codesourcery.com
^ permalink raw reply [flat|nested] 264+ messages in thread
* Re: Removal of V2 code
2000-11-21 10:56 ` Mark Mitchell
2000-11-21 12:20 ` Benjamin Kosnik
@ 2000-11-21 12:37 ` Geoff Keating
2000-11-21 12:47 ` Mark Mitchell
1 sibling, 1 reply; 264+ messages in thread
From: Geoff Keating @ 2000-11-21 12:37 UTC (permalink / raw)
To: mark; +Cc: gcc, libstdc++
> Cc: gcc@gcc.gnu.org, libstdc++@sources.redhat.com
> From: Mark Mitchell <mark@codesourcery.com>
> Date: Tue, 21 Nov 2000 10:56:13 -0800
> Geoff --
>
> Thanks for the script. It worked great.
>
> The rumors of V2 not working with newlib were greatly exaggerated.
Great! (I assume you mean V3). It seems to have changed since I
looked at it last.
Now the problem is that V3 doesn't cross-configure from Solaris. I get:
updating cache ../config.cache
/sloth/delay/tbox/cvs-gcc/egcs/libstdc++-v3/configure: test: argument expected
and the configuration stops. This is just the usual breakage, though,
and probably easily fixed, as compared to the earlier situation where
it looked like lots of porting would be required.
So, go for it!
> The code in question looks like it calls `_fcntl'; I don't know why
> the linker reports that as `fcntl'. I don't understand what's causing
> that, but it's clear that it has nothing to do with V3. I suspect a
> newlib configury issue. Geoff, would you mind tracking this down?
I'll look at it.
Thank you very much for your work!
--
- Geoffrey Keating <geoffk@geoffk.org>
^ permalink raw reply [flat|nested] 264+ messages in thread
* Re: Removal of V2 code
2000-11-21 12:37 ` Geoff Keating
@ 2000-11-21 12:47 ` Mark Mitchell
0 siblings, 0 replies; 264+ messages in thread
From: Mark Mitchell @ 2000-11-21 12:47 UTC (permalink / raw)
To: geoffk, geoffk; +Cc: gcc, libstdc++
>>>>> "Geoff" == Geoff Keating <geoffk@geoffk.org> writes:
>> Cc: gcc@gcc.gnu.org, libstdc++@sources.redhat.com From: Mark
>> Mitchell <mark@codesourcery.com> Date: Tue, 21 Nov 2000
>> 10:56:13 -0800
>> Geoff --
>>
>> Thanks for the script. It worked great.
>>
>> The rumors of V2 not working with newlib were greatly
>> exaggerated.
Geoff> Great! (I assume you mean V3). It seems to have changed
Yes, sorry, for the confusion.
Geoff> since I looked at it last.
I think this may be because the V3 folks put some stubs for threading
primitives in place that will provide a non thread-safe implementation
on all platforms.
--
Mark Mitchell mark@codesourcery.com
CodeSourcery, LLC http://www.codesourcery.com
^ permalink raw reply [flat|nested] 264+ messages in thread
* Re: Removal of V2 code
2000-11-19 17:10 ` Geoff Keating
` (2 preceding siblings ...)
2000-11-19 17:56 ` Mark Mitchell
@ 2000-11-20 2:54 ` Franz Sirl
2000-11-21 6:38 ` Franz Sirl
3 siblings, 1 reply; 264+ messages in thread
From: Franz Sirl @ 2000-11-20 2:54 UTC (permalink / raw)
To: Geoff Keating; +Cc: Mark Mitchell, gcc
At 02:10 20.11.00, Geoff Keating wrote:
>Mark Mitchell <mark@codesourcery.com> writes:
>
> > I plan on doing a `cvs remove' on the V2 sources, and removing the
> > configury bits for V2 at the end of next week as things seem to be
> > settling OK with V3. (There are still some AIX issues with V3, but
> > they seem to be well on the path to resolution.)
> >
> > If you have objections to this plan (i.e., you need the V2 sources to
> > continue your work), you should:
> >
> > - Try hard to get V3 working on your platform.
> >
> > - Complain to me. Explain why you can't switch to V3, and what
> > you need in order to make that happen.
> >
> > We can keep V2 in the tree for a bit longer, if we need to, but you'll
> > have to come up with a good reason... :-)
>
>The embedded platforms (*-elf, powerpc-eabi*, *-coff) don't work yet with
>V3; I
>don't believe anyone, certainly not at Red Hat, will be able to fix
>this until next month; we don't have time.
Well, not only the embedded stuff is non-functional, powerpc-linux-gnu is
unusable with libstdc++-v3 too (see my posted testsuite results). I
couldn't do too much debugging yet, but it seems most (if not all) of the
testcases crash during constructor handling in glibc's malloc/free code.
Franz.
^ permalink raw reply [flat|nested] 264+ messages in thread
* Re: Removal of V2 code
2000-11-20 2:54 ` Franz Sirl
@ 2000-11-21 6:38 ` Franz Sirl
2000-11-21 7:26 ` Daniel Berlin
0 siblings, 1 reply; 264+ messages in thread
From: Franz Sirl @ 2000-11-21 6:38 UTC (permalink / raw)
To: Mark Mitchell; +Cc: Geoff Keating, gcc
At 11:54 20.11.00, Franz Sirl wrote:
>At 02:10 20.11.00, Geoff Keating wrote:
>>Mark Mitchell <mark@codesourcery.com> writes:
>>
>> > I plan on doing a `cvs remove' on the V2 sources, and removing the
>> > configury bits for V2 at the end of next week as things seem to be
>> > settling OK with V3. (There are still some AIX issues with V3, but
>> > they seem to be well on the path to resolution.)
>> >
>> > If you have objections to this plan (i.e., you need the V2 sources to
>> > continue your work), you should:
>> >
>> > - Try hard to get V3 working on your platform.
>> >
>> > - Complain to me. Explain why you can't switch to V3, and what
>> > you need in order to make that happen.
>> >
>> > We can keep V2 in the tree for a bit longer, if we need to, but you'll
>> > have to come up with a good reason... :-)
>>
>>The embedded platforms (*-elf, powerpc-eabi*, *-coff) don't work yet with
>>V3; I
>>don't believe anyone, certainly not at Red Hat, will be able to fix
>>this until next month; we don't have time.
>
>Well, not only the embedded stuff is non-functional, powerpc-linux-gnu is
>unusable with libstdc++-v3 too (see my posted testsuite results). I
>couldn't do too much debugging yet, but it seems most (if not all) of the
>testcases crash during constructor handling in glibc's malloc/free code.
Replying to my own message, here is a backtrace of what I get as a fail in
all cases I looked into so far, this is with todays CVS:
[fsirl@entropy:~/obj/gccm/gcc/testsuite]$
LD_LIBRARY_PATH=~/obj/gccm/ppc-redhat-linux/libstdc++-v3/src/.libs/ gdb
./g++-pt-ttp9-C
GNU gdb 5.0
Copyright 2000 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB. Type "show warranty" for details.
This GDB was configured as "ppc-redhat-linux"...
(gdb) r
Starting program: /home/fsirl/obj/gccm/gcc/testsuite/./g++-pt-ttp9-C
Program received signal SIGSEGV, Segmentation fault.
0xfe3893c in chunk_free () at /usr/include/stdlib.h:269
269 return __strtold_internal (__nptr, __endptr, 0);
Current language: auto; currently c++
(gdb) bt full
#0 0xfe3893c in chunk_free () at /usr/include/stdlib.h:269
__alloc1 = (allocator<char> &) @0x10010a08: {<No data fields>}
__b = (istreambuf_iterator<char,std::char_traits<char> > &)
@0x2c030001: Cannot access memory at address 0x2c030001
(gdb) bt
#0 0xfe3893c in chunk_free () at /usr/include/stdlib.h:269
#1 0xfe388ec in free () at /usr/include/stdlib.h:269
#2 0xffa67b4 in _ZNSs4_Rep10_M_destroyERKSaIcE (this=0x2c030001,
__a=@0xffefa08)
at /home/fsirl/cvsx/gccm/libstdc++-v3/include/bits/stl_alloc.h:131
#3 0xff98298 in _ZNSt6locale7classicEv () at
/home/fsirl/cvsx/gccm/libstdc++-v3/include/bits/basic_string.h:178
#4 0xffadbbc in _ZNSt13basic_filebufIcSt11char_traitsIcEEC1Ev (this=0xffef604)
at /home/fsirl/cvsx/gccm/libstdc++-v3/include/bits/localefwd.h:311
#5 0xff8fdc0 in __static_initialization_and_destruction_0
(__initialize_p=268503580, __priority=268368392)
at /home/fsirl/cvsx/gccm/libstdc++-v3/include/bits/locale_facets.h:35
#6 0xff90070 in _GLOBAL_.I._ZSt11__cfileinit () at
/home/fsirl/cvsx/gccm/libstdc++-v3/include/bits/std_fstream.h:96
#7 0xff8d7a4 in __do_global_ctors_aux () at
/home/fsirl/cvsx/gccm/libstdc++-v3/libsupc++/vec.cc:56
#8 0xff89e68 in _init () at /usr/include/stdlib.h:269
#9 0x300106ac in _start () from /lib/ld.so.1
(gdb)
This happens on both glibc-2.1.3 and glibc-2.2. Does anyone have an idea
what might have gone wrong here?
BTW, shouldn't c++filt now default to the V3 mangling style too?
Franz.
^ permalink raw reply [flat|nested] 264+ messages in thread
* Re: Removal of V2 code
2000-11-19 13:03 ` Removal of V2 code Mark Mitchell
2000-11-19 17:10 ` Geoff Keating
@ 2000-11-20 0:41 ` Andrew Cagney
2000-11-20 0:55 ` Mark Mitchell
1 sibling, 1 reply; 264+ messages in thread
From: Andrew Cagney @ 2000-11-20 0:41 UTC (permalink / raw)
To: Mark Mitchell; +Cc: gcc
Mark Mitchell wrote:
>
> I plan on doing a `cvs remove' on the V2 sources, and removing the
> configury bits for V2 at the end of next week as things seem to be
> settling OK with V3. (There are still some AIX issues with V3, but
> they seem to be well on the path to resolution.)
>
> If you have objections to this plan (i.e., you need the V2 sources to
> continue your work), you should:
>
> - Try hard to get V3 working on your platform.
>
> - Complain to me. Explain why you can't switch to V3, and what
> you need in order to make that happen.
Do you really want to do this?
Wouldn't it be better to take a more staggered approach? First release
a GCC with both v2 and v3 ABI support and then release a successor that
only contains v3 support.
I expect many people to try to use GCC with pre installed tools (GDB
comes to mind). Requiring people to upgrade to some
not-yet-even-developed version of random tools is going to raise a few
eyebrows.
(perhaps I'm misunderstanding the significance of the change)
enjoy,
Andrew
^ permalink raw reply [flat|nested] 264+ messages in thread
* Re: Removal of V2 code
2000-11-20 0:41 ` Andrew Cagney
@ 2000-11-20 0:55 ` Mark Mitchell
2000-11-20 3:32 ` Marc Espie
[not found] ` <00112021562300.00259@hallo>
0 siblings, 2 replies; 264+ messages in thread
From: Mark Mitchell @ 2000-11-20 0:55 UTC (permalink / raw)
To: ac131313; +Cc: gcc
>>>>> "Andrew" == Andrew Cagney <ac131313@cygnus.com> writes:
Andrew> Mark Mitchell wrote:
>> I plan on doing a `cvs remove' on the V2 sources, and removing
>> the configury bits for V2 at the end of next week as things
>> seem to be settling OK with V3. (There are still some AIX
>> issues with V3, but they seem to be well on the path to
>> resolution.)
>>
>> If you have objections to this plan (i.e., you need the V2
>> sources to continue your work), you should:
>>
>> - Try hard to get V3 working on your platform.
>>
>> - Complain to me. Explain why you can't switch to V3, and what
>> you need in order to make that happen.
Andrew> Do you really want to do this?
Andrew> Wouldn't it be better to take a more staggered approach?
Andrew> First release a GCC with both v2 and v3 ABI support and
Andrew> then release a successor that only contains v3 support.
We could do that. The SC decided a while back *not* to do that, but
it/we could change its/our collective mind.
The issue is that the new ABI implies the use of V3; V2 does not work
with the new ABI. We want to stop breaking the C++ ABI; that's one
major impetus for GCC 3.0. If we provide both ABIs, we're encouraging
people to use the old ABI, which is not quite the same as what was in
GCC 2.95.x, but is also not what we want to use going forward.
The attitude at the time the release criteria were put together was
that you could always use GCC 2.95 if you wanted an ABI compatible
with GCC 2.95. :-) In other words, there was a conscious decision not
to support the old ABI in GCC 3.0, with the hope of never again
chaging the C++ ABI.
Andrew> I expect many people to try to use GCC with pre installed
Andrew> tools (GDB comes to mind). Requiring people to upgrade to
Andrew> some not-yet-even-developed version of random tools is
Andrew> going to raise a few eyebrows.
Nowadays, what tends to happen for GNU/Linux users is that somebody
(Debian, Red Hat, etc) puts together a nice package with everyting in
it. I wouldn't expect GCC 3.0 to appear in those distributions until
other tools are in place. You're correct that users that aren't
getting their GNU diet spoon-fed to them (:-)) may have to download
development versions of some supporting tools. If we wait until all
those tools are ready, though, we'll likely be waiting a long time...
--
Mark Mitchell mark@codesourcery.com
CodeSourcery, LLC http://www.codesourcery.com
^ permalink raw reply [flat|nested] 264+ messages in thread
* Re: Removal of V2 code
2000-11-20 0:55 ` Mark Mitchell
@ 2000-11-20 3:32 ` Marc Espie
2000-11-20 5:53 ` Joseph S. Myers
2000-11-20 8:34 ` Mark Mitchell
[not found] ` <00112021562300.00259@hallo>
1 sibling, 2 replies; 264+ messages in thread
From: Marc Espie @ 2000-11-20 3:32 UTC (permalink / raw)
To: mark; +Cc: gcc
In article < 20001120005458Q.mitchell@codesourcery.com > you write:
>Nowadays, what tends to happen for GNU/Linux users is that somebody
>(Debian, Red Hat, etc) puts together a nice package with everyting in
>it. I wouldn't expect GCC 3.0 to appear in those distributions until
>other tools are in place. You're correct that users that aren't
>getting their GNU diet spoon-fed to them (:-)) may have to download
>development versions of some supporting tools. If we wait until all
>those tools are ready, though, we'll likely be waiting a long time...
Well, some other people take a more conservative approach and don't want
to unleash DEVELOPMENT code on the general public. I still think it is
completely, utterly WRONG to release development code in a so-called `stable'
release. If anything, it gives the impression that free software is put
together hastily, and does work slightly better than windows, but with lots
of bugs.
How about trying to entice the OTHER projects that are maintained by the FSF
to keep track and get a somewhat DECENT release schedule ?
I could even put forward a majorly NEW concept: how about having RELEASE DATES
for RELATED gnu projects ? Namely, you've got what we would call a
toolchain (binutils, gcc, gdb...). How about releasing a STABLE version
every year (say, 1st of january) ? and ensuring that the current year versions
work together ?
The one thing I do agree is that this is NOT FUN STUFF AT ALL.
Well, ethically, `free software' is not always fun. Having a heck of a good
time hacking also means a few hours should be sunk into the not funny parts.
Like documenting, or offering a wee little bit of support for stable versions.
In my opinion, the reason it does not quite work now is that most people just
work on the stuff that's fun for them. There are a few contributors who DO
deal with the `unnice' parts of it... (Invariably, they are also the guys who
don't really have the time for that) not enough though (for instance, have
a look at gcc's info documentation. It's incomplete. Why ? because people want
to write code, not documentation).
If you are a gcc contributor, ask yourself that question: what have you done
for gcc last year ? Was it all a fun hobby, or did you also help with other
chores ? If not, WHY NOT ???
^ permalink raw reply [flat|nested] 264+ messages in thread
* Re: Removal of V2 code
2000-11-20 3:32 ` Marc Espie
@ 2000-11-20 5:53 ` Joseph S. Myers
2000-11-20 8:34 ` Mark Mitchell
1 sibling, 0 replies; 264+ messages in thread
From: Joseph S. Myers @ 2000-11-20 5:53 UTC (permalink / raw)
To: Marc Espie; +Cc: mark, gcc
On Mon, 20 Nov 2000, Marc Espie wrote:
> (for instance, have
> a look at gcc's info documentation. It's incomplete. Why ? because people want
> to write code, not documentation).
I have proposed in
<URL: http://gcc.gnu.org/ml/gcc-patches/2000-11/msg00381.html > that
documentation be a mandatory part of patches for which it is applicable.
Hopefully this proposal is being considered.
--
Joseph S. Myers
jsm28@cam.ac.uk
^ permalink raw reply [flat|nested] 264+ messages in thread
* Re: Removal of V2 code
2000-11-20 3:32 ` Marc Espie
2000-11-20 5:53 ` Joseph S. Myers
@ 2000-11-20 8:34 ` Mark Mitchell
1 sibling, 0 replies; 264+ messages in thread
From: Mark Mitchell @ 2000-11-20 8:34 UTC (permalink / raw)
To: espie; +Cc: gcc
>>>>> "Marc" == Marc Espie <espie@quatramaran.ens.fr> writes:
Marc> Well, some other people take a more conservative approach
Marc> and don't want to unleash DEVELOPMENT code on the general
Marc> public.
In at least a narrow interpretation, we're not talking about that.
The GCC code will be tested, stable, etc. The issue is whether or not
all the supporting tools will have caught up.
I hope they will have, and as GCC people, we should encourage those
people to catch up. But, everyone has their own priorities, and
exactly what the GDB folks (for example) are up to is not something
the GCC SC really knows about.
This is a weakness is the free software development model: there isn't
a global, centralizing authority to make everything happen in a
coordinated way. Companies (Red Hat, SuSE, etc.) have sprung up to
provide that value add. And that lack of central authority is also
the strength of the free software model.
--
Mark Mitchell mark@codesourcery.com
CodeSourcery, LLC http://www.codesourcery.com
^ permalink raw reply [flat|nested] 264+ messages in thread
[parent not found: <00112021562300.00259@hallo>]
* Re: Removal of V2 code
[not found] ` <00112021562300.00259@hallo>
@ 2000-11-20 14:58 ` Mark Mitchell
2000-11-21 14:14 ` Geoff Keating
0 siblings, 1 reply; 264+ messages in thread
From: Mark Mitchell @ 2000-11-20 14:58 UTC (permalink / raw)
To: hartmut.schirmer; +Cc: gcc
[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain, Size: 642 bytes --]
>>>>> "Hartmut" == Hartmut Schirmer <hartmut.schirmer@arcormail.de> writes:
Hartmut> On Mon, 20 Nov 2000, Mark Mitchell wrote:
>> The attitude at the time the release criteria were put together
>> was that you could always use GCC 2.95 if you wanted an ABI
>> compatible with GCC 2.95. :-)
Hartmut> But we´re waiting for gcc 2.95.3 for more than a year now
Hartmut> :((
There aren't currently any plans for such a release, but the Steering
Committe is debating such a release even as we speak.
--
Mark Mitchell mark@codesourcery.com
CodeSourcery, LLC http://www.codesourcery.com
^ permalink raw reply [flat|nested] 264+ messages in thread
* Re: Removal of V2 code
2000-11-20 14:58 ` Mark Mitchell
@ 2000-11-21 14:14 ` Geoff Keating
2000-11-21 15:06 ` Mark Mitchell
0 siblings, 1 reply; 264+ messages in thread
From: Geoff Keating @ 2000-11-21 14:14 UTC (permalink / raw)
To: Mark Mitchell; +Cc: gcc
[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain, Size: 735 bytes --]
Mark Mitchell <mark@codesourcery.com> writes:
> >>>>> "Hartmut" == Hartmut Schirmer <hartmut.schirmer@arcormail.de> writes:
>
> Hartmut> On Mon, 20 Nov 2000, Mark Mitchell wrote:
> >> The attitude at the time the release criteria were put together
> >> was that you could always use GCC 2.95 if you wanted an ABI
> >> compatible with GCC 2.95. :-)
>
> Hartmut> But we´re waiting for gcc 2.95.3 for more than a year now
> Hartmut> :((
>
> There aren't currently any plans for such a release, but the Steering
> Committe is debating such a release even as we speak.
Are there records of such debates anywhere? Minutes of meetings,
mailing list archives, etc.?
--
- Geoffrey Keating <geoffk@geoffk.org>
^ permalink raw reply [flat|nested] 264+ messages in thread
* Re: Removal of V2 code
2000-11-21 14:14 ` Geoff Keating
@ 2000-11-21 15:06 ` Mark Mitchell
2000-11-21 16:08 ` Tom Tromey
2000-11-21 20:00 ` SC confidentiality Geoff Keating
0 siblings, 2 replies; 264+ messages in thread
From: Mark Mitchell @ 2000-11-21 15:06 UTC (permalink / raw)
To: geoffk; +Cc: gcc
>>>>> "Geoff" == Geoff Keating <geoffk@geoffk.org> writes:
Geoff> Are there records of such debates anywhere? Minutes of
Geoff> meetings, mailing list archives, etc.?
Not to my knowledge.
I believe that in general the details of SC discussions are considered
confidential in order to encourage frank exchanges of ideas among the
SC members. I could be wrong about that, but that's how I've always
treated other people's SC postings. If I'm right, that would make
releasing any such archives inappropriate.
--
Mark Mitchell mark@codesourcery.com
CodeSourcery, LLC http://www.codesourcery.com
^ permalink raw reply [flat|nested] 264+ messages in thread
* Re: Removal of V2 code
2000-11-21 15:06 ` Mark Mitchell
@ 2000-11-21 16:08 ` Tom Tromey
2000-11-21 17:21 ` 2.95.3 (was Re: Removal of V2 code) Joe Buck
2000-11-21 21:41 ` Removal of V2 code Mark Mitchell
2000-11-21 20:00 ` SC confidentiality Geoff Keating
1 sibling, 2 replies; 264+ messages in thread
From: Tom Tromey @ 2000-11-21 16:08 UTC (permalink / raw)
To: Mark Mitchell; +Cc: GCC Hackers
Mark> I believe that in general the details of SC discussions are
Mark> considered confidential in order to encourage frank exchanges of
Mark> ideas among the SC members. I could be wrong about that, but
Mark> that's how I've always treated other people's SC postings. If
Mark> I'm right, that would make releasing any such archives
Mark> inappropriate.
What is it about release schedules that makes it important to discuss
them secretly? I think having a debate about whether to release
2.95.3 should happen in public. In fact, the debate will probably
happen anyway, whether the SC wants it or not. I know we've discussed
it several times on the Java list (mostly in terms of "I don't know if
there will be one, since it is only discussed in secret").
Tom
^ permalink raw reply [flat|nested] 264+ messages in thread
* 2.95.3 (was Re: Removal of V2 code)
2000-11-21 16:08 ` Tom Tromey
@ 2000-11-21 17:21 ` Joe Buck
2000-11-22 13:55 ` Tom Tromey
2000-11-21 21:41 ` Removal of V2 code Mark Mitchell
1 sibling, 1 reply; 264+ messages in thread
From: Joe Buck @ 2000-11-21 17:21 UTC (permalink / raw)
To: tromey; +Cc: Mark Mitchell, GCC Hackers
> Mark> I believe that in general the details of SC discussions are
> Mark> considered confidential in order to encourage frank exchanges of
> Mark> ideas among the SC members. I could be wrong about that, but
> Mark> that's how I've always treated other people's SC postings. If
> Mark> I'm right, that would make releasing any such archives
> Mark> inappropriate.
> What is it about release schedules that makes it important to discuss
> them secretly? I think having a debate about whether to release
> 2.95.3 should happen in public. In fact, the debate will probably
> happen anyway, whether the SC wants it or not. I know we've discussed
> it several times on the Java list (mostly in terms of "I don't know if
> there will be one, since it is only discussed in secret").
It's OK to discuss 2.95.3 in public as far as I'm concerned. So I'll
start it off, and hope I don't offend other SC members too badly.
(I'm usually the one who least knows when to shut up ;-).
It's also, as far as I'm concerned, OK to talk about what's been
discussed in the SC in general terms, as long as the topic isn't
sensitive (e.g. once in a while we have to deal with two people not
getting along, and after it's settled there's no reason to bring up
any name-calling that happened before).
The SC is charged with making final decisions, but certainly all
developers should have input -- as long as people understand that
releases don't happen by magic: we need real volunteers and there
are tradeoffs (that is, if we do 2.95.3 it is inevitable that 3.0
will be later).
We have a qualified person who has offered to run 2.95.3 if we do it.
Before we had that, there wasn't much reason to bring it up in public,
as it would just raise false hopes. I'm not naming him here because
I didn't ask his permission.
We pretty much have consensus that we should at least do "2.95.2.1" --
a very minimal patch to work with glibc 2.2. But the BSD folks and
others need a couple of other patches, suggesting that more should be
done. It will be no use whipping something out quickly that just
embarrasses us all, so if we do more than 2.95.2.1 we need a substantial
testing effort to make sure we have no regressions wrt 2.95.2.
Inevitably folks will want some patches that can't go in. One issue is
that we don't want yet ANOTHER incompatible C++ release out there, which
makes it very difficult, though not impossible, to fix the Linux-specific
vtable thunks bug without breaking link compatibility (unless someone has
a cool trick I don't know about).
Another issue that some on the SC have expressed worries about is whether
2.95.3 will cause developers of front ends or back ends that haven't been
fixed to work with the planned 3.0 changes (e.g. new C++ ABI, GC) to lose
their motivation to quickly fix the problems, meaning that either 3.0 will
taken even longer or then we'll be asked to support two parallel chains of
development going forward (2.95.4, etc).
^ permalink raw reply [flat|nested] 264+ messages in thread
* Re: 2.95.3 (was Re: Removal of V2 code)
2000-11-21 17:21 ` 2.95.3 (was Re: Removal of V2 code) Joe Buck
@ 2000-11-22 13:55 ` Tom Tromey
0 siblings, 0 replies; 264+ messages in thread
From: Tom Tromey @ 2000-11-22 13:55 UTC (permalink / raw)
To: Joe Buck; +Cc: Mark Mitchell, GCC Hackers
>>>>> "Joe" == Joe Buck <jbuck@racerx.synopsys.com> writes:
Joe> Another issue that some on the SC have expressed worries about is
Joe> whether 2.95.3 will cause developers of front ends or back ends
Joe> that haven't been fixed to work with the planned 3.0 changes
Joe> (e.g. new C++ ABI, GC) to lose their motivation to quickly fix
Joe> the problems, meaning that either 3.0 will taken even longer or
Joe> then we'll be asked to support two parallel chains of development
Joe> going forward (2.95.4, etc).
In Java-land we were interested in having 2.95.3 about 6 months ago
when the cvs gcc was regularly broken. However we didn't have
resources to do a full release :-(.
If it came up now I imagine we would just ignore it. We're busy
working on getting everything set for gcc 3.0.
In some ways this would be bad, because the gcc in Red Hat 7.0 has
newer Java support than any hypothetical 2.95.3 would.
Tom
^ permalink raw reply [flat|nested] 264+ messages in thread
* Re: Removal of V2 code
2000-11-21 16:08 ` Tom Tromey
2000-11-21 17:21 ` 2.95.3 (was Re: Removal of V2 code) Joe Buck
@ 2000-11-21 21:41 ` Mark Mitchell
1 sibling, 0 replies; 264+ messages in thread
From: Mark Mitchell @ 2000-11-21 21:41 UTC (permalink / raw)
To: tromey; +Cc: gcc
>>>>> "Tom" == Tom Tromey <tromey@cygnus.com> writes:
Mark> I believe that in general the details of SC discussions are
Mark> considered confidential in order to encourage frank
Mark> exchanges of ideas among the SC members. I could be wrong
Mark> about that, but that's how I've always treated other
Mark> people's SC postings. If I'm right, that would make
Mark> releasing any such archives inappropriate.
Tom> What is it about release schedules that makes it important to
Tom> discuss them secretly?
Nothing in particular.
I was just trying to answer the question as to why there are no mail
archives and such.
--
Mark Mitchell mark@codesourcery.com
CodeSourcery, LLC http://www.codesourcery.com
^ permalink raw reply [flat|nested] 264+ messages in thread
* SC confidentiality
2000-11-21 15:06 ` Mark Mitchell
2000-11-21 16:08 ` Tom Tromey
@ 2000-11-21 20:00 ` Geoff Keating
2000-11-21 21:57 ` Mark Mitchell
1 sibling, 1 reply; 264+ messages in thread
From: Geoff Keating @ 2000-11-21 20:00 UTC (permalink / raw)
To: mark; +Cc: gcc
> From: Mark Mitchell <mark@codesourcery.com>
> Date: Tue, 21 Nov 2000 15:06:26 -0800
> >>>>> "Geoff" == Geoff Keating <geoffk@geoffk.org> writes:
>
> Geoff> Are there records of such debates anywhere? Minutes of
> Geoff> meetings, mailing list archives, etc.?
>
> Not to my knowledge.
>
> I believe that in general the details of SC discussions are considered
> confidential in order to encourage frank exchanges of ideas among the
> SC members. I could be wrong about that, but that's how I've always
> treated other people's SC postings. If I'm right, that would make
> releasing any such archives inappropriate.
I would strongly argue that this is a bad practise.
* The job of the SC is to help the maintainers by setting policy for
the future development of gcc. This will be much easier for the
maintainers if the reasons behind the policy decisions can be
explained and the arguments considered when making those decisions
are available.
* The members of the SC are representing various facets of the
community of GCC users. Unless their positions are public,
the community can give no feedback on whether those positions
are actually shared by the community.
* This is particularly important given the possibilty of a conflict of
interest, since many of the SC members are also affiliated with
various companies which have their own interests in the development
of GCC. A closed discussion allows allegations to be made and
heard, even by those with obvious biases, which would be laughed at
if the discussion were open.
Of course, prior discussions which were made in the belief that they
were confidential should not be disclosed, but for the future I urge
the SC to make its discussion open.
--
- Geoffrey Keating <geoffk@geoffk.org>
^ permalink raw reply [flat|nested] 264+ messages in thread
* Re: SC confidentiality
2000-11-21 20:00 ` SC confidentiality Geoff Keating
@ 2000-11-21 21:57 ` Mark Mitchell
0 siblings, 0 replies; 264+ messages in thread
From: Mark Mitchell @ 2000-11-21 21:57 UTC (permalink / raw)
To: geoffk, geoffk; +Cc: gcc
>>>>> "Geoff" == Geoff Keating <geoffk@geoffk.org> writes:
Geoff> Of course, prior discussions which were made in the belief
Geoff> that they were confidential should not be disclosed, but
Geoff> for the future I urge the SC to make its discussion open.
I have no strong feelings on this matter.
Certainly, the SC should not be (and is not, in my opinion) a secret
cabal of puppeteers. :-)
On the other hand, there is some value in having the opportunity to
discuss delicate issues in confidence. In my experience, which is
very limited relative to a lot of the more senior SC members, there
are no technical dicussions -- almost all discussions are about things
like possible inappropriate behavior on the part of individuals,
policies for dealing with copyright assignment paperwork, strategies
for handling events that might cause confusion about GCC or the GNU
Project, and so forth.
It's a tricky balance.
--
Mark Mitchell mark@codesourcery.com
CodeSourcery, LLC http://www.codesourcery.com
^ permalink raw reply [flat|nested] 264+ messages in thread
[parent not found: <12:29:11>]
[parent not found: <08:25:39>]
[parent not found: <"Fri,>]
[parent not found: <25>]
[parent not found: <19990608202201.F17154@admin3.jump.net>]
* assemble_external on .class files
@ 1999-05-20 21:06 Mark Klein
1999-05-22 14:23 ` Jeffrey A Law
1999-05-31 21:36 ` Mark Klein
0 siblings, 2 replies; 264+ messages in thread
From: Mark Klein @ 1999-05-20 21:06 UTC (permalink / raw)
To: egcs; +Cc: java-discuss
I'm having a whale of a time trying to figure out a problem I'm
experiencing with gcj:
External procedure labels need to be .IMPORTED before they can
be used on my platform. Some of these are part of a dispatch table
created from classes such as java::lang::Object. My first attempt at
resolving this was to place an assemble_external() in layout_class(),
but that results in a lot of clutter with .IMPORT statements for a
whole bunch of things that really are not referenced. I suppose this
could be my brute force method, but I would prefer to only do the
.IMPORT for referenced methods/classes.
Here's HelloWorld's _vt_:
.IMPORT clone__Q34java4lang6Object,CODE
.IMPORT hashCode__Q34java4lang6Object,CODE
.align 4
HelloWorld virtual table
.word _CL_10HelloWorld
.word 0
.word P%java::lang::Object::finalize(void)
.word P%java::lang::Object::hashCode(void)
.word P%java::lang::Object::equals(java::lang::Object *)
.word P%java::lang::Object::toString(void)
.word P%java::lang::Object::clone(void)
Note that clone() and hashCode() have been imported. But finalize(),
equals() and tostring() have not. They are referenced in some fashion
in order to be in the virtual table when the rest of their brethren
are not. But, clone() and hashCode() must be referenced in some other
path in order to cause them to be imported.
I can't seem to figure out what that path is in order to make the same
changes for the other case. I also have not completed by gdb port, so
I am debugging this with the native (non-symbolic) debugger, which is
also probably leading to some of my confusion as I chase pointers in trees.
TIA,
M.
--
Mark Klein DIS International, Ltd.
http://www.dis.com 415-892-8400
PGP Public Key Available
^ permalink raw reply [flat|nested] 264+ messages in thread
* Re: assemble_external on .class files
1999-05-20 21:06 assemble_external on .class files Mark Klein
@ 1999-05-22 14:23 ` Jeffrey A Law
1999-05-22 15:28 ` Mark Klein
` (2 more replies)
1999-05-31 21:36 ` Mark Klein
1 sibling, 3 replies; 264+ messages in thread
From: Jeffrey A Law @ 1999-05-22 14:23 UTC (permalink / raw)
To: Mark Klein; +Cc: egcs, java-discuss
In message < 4.1.19990520204749.00c7fa90@garfield.dis.com >you write:
> External procedure labels need to be .IMPORTED before they can
> be used on my platform. Some of these are part of a dispatch table
> created from classes such as java::lang::Object. My first attempt at
> resolving this was to place an assemble_external() in layout_class(),
> but that results in a lot of clutter with .IMPORT statements for a
> whole bunch of things that really are not referenced. I suppose this
> could be my brute force method, but I would prefer to only do the
> .IMPORT for referenced methods/classes.
I wouldn't worry about the extra .IMPORTs. In fact, it's a little known
aspect of SOM that the assembler is responsible for _not_ adding an imported
symbol to the undefined symbols for a module if that symbol is not actually
referenced.
Jeff
^ permalink raw reply [flat|nested] 264+ messages in thread
* Re: assemble_external on .class files
1999-05-22 14:23 ` Jeffrey A Law
@ 1999-05-22 15:28 ` Mark Klein
1999-05-31 21:36 ` Mark Klein
1999-05-25 18:33 ` Mark Klein
1999-05-31 21:36 ` Jeffrey A Law
2 siblings, 1 reply; 264+ messages in thread
From: Mark Klein @ 1999-05-22 15:28 UTC (permalink / raw)
To: law; +Cc: egcs, java-discuss
At 03:19 PM 5/22/99 -0600, Jeffrey A Law wrote:
>I wouldn't worry about the extra .IMPORTs. In fact, it's a little known
>aspect of SOM that the assembler is responsible for _not_ adding an imported
>symbol to the undefined symbols for a module if that symbol is not actually
>referenced.
Thanks ... brute force method it is! Just when I was starting to see the
_trees_ through the forest. :-)
--
Mark Klein DIS International, Ltd.
http://www.dis.com 415-892-8400
PGP Public Key Available
^ permalink raw reply [flat|nested] 264+ messages in thread
* Re: assemble_external on .class files
1999-05-22 15:28 ` Mark Klein
@ 1999-05-31 21:36 ` Mark Klein
0 siblings, 0 replies; 264+ messages in thread
From: Mark Klein @ 1999-05-31 21:36 UTC (permalink / raw)
To: law; +Cc: egcs, java-discuss
At 03:19 PM 5/22/99 -0600, Jeffrey A Law wrote:
>I wouldn't worry about the extra .IMPORTs. In fact, it's a little known
>aspect of SOM that the assembler is responsible for _not_ adding an imported
>symbol to the undefined symbols for a module if that symbol is not actually
>referenced.
Thanks ... brute force method it is! Just when I was starting to see the
_trees_ through the forest. :-)
--
Mark Klein DIS International, Ltd.
http://www.dis.com 415-892-8400
PGP Public Key Available
^ permalink raw reply [flat|nested] 264+ messages in thread
* Re: assemble_external on .class files
1999-05-22 14:23 ` Jeffrey A Law
1999-05-22 15:28 ` Mark Klein
@ 1999-05-25 18:33 ` Mark Klein
1999-05-25 19:41 ` Jeffrey A Law
1999-05-31 21:36 ` Mark Klein
1999-05-31 21:36 ` Jeffrey A Law
2 siblings, 2 replies; 264+ messages in thread
From: Mark Klein @ 1999-05-25 18:33 UTC (permalink / raw)
To: Jeffrey A Law; +Cc: egcs, java-discuss
At 03:19 PM 5/22/99 -0600, Jeffrey A Law wrote:
> > My first attempt at
> > resolving this was to place an assemble_external() in
layout_class_method(),
> > but that results in a lot of clutter with .IMPORT statements for a
> > whole bunch of things that really are not referenced.
>I wouldn't worry about the extra .IMPORTs. In fact, it's a little known
>aspect of SOM that the assembler is responsible for _not_ adding an imported
>symbol to the undefined symbols for a module if that symbol is not actually
>referenced.
Turns out that this also isn't a complete solution, partially because
assemble_external is looking for DECL_EXTERNAL. The tree field used
for DECL_EXTERNAL is also used for METHOD_NATIVE for java. That also
explains why certain .IMPORTs were happening and others were not ...
only native methods were getting the .IMPORTs.
There may be another problem here in that DECL_EXTERNAL is explicitly
set in various places and could ultimately end up in a usage conflict
between it and the usage of METHOD_NATIVE elswhere in the code.
Suggestions?
M.
--
Mark Klein DIS International, Ltd.
http://www.dis.com 415-892-8400
PGP Public Key Available
^ permalink raw reply [flat|nested] 264+ messages in thread
* Re: assemble_external on .class files
1999-05-25 18:33 ` Mark Klein
@ 1999-05-25 19:41 ` Jeffrey A Law
1999-05-25 21:00 ` Per Bothner
1999-05-31 21:36 ` Jeffrey A Law
1999-05-31 21:36 ` Mark Klein
1 sibling, 2 replies; 264+ messages in thread
From: Jeffrey A Law @ 1999-05-25 19:41 UTC (permalink / raw)
To: Mark Klein; +Cc: egcs, java-discuss
In message < 4.1.19990525180956.00c96100@garfield.dis.com >you write:
> Turns out that this also isn't a complete solution, partially because
> assemble_external is looking for DECL_EXTERNAL. The tree field used
> for DECL_EXTERNAL is also used for METHOD_NATIVE for java. That also
> explains why certain .IMPORTs were happening and others were not ...
> only native methods were getting the .IMPORTs.
>
> There may be another problem here in that DECL_EXTERNAL is explicitly
> set in various places and could ultimately end up in a usage conflict
> between it and the usage of METHOD_NATIVE elswhere in the code.
>
> Suggestions?
Split up DECL_EXTERNAL and METHOD_NATIVE. It seems awful strange/wrong to
have them overloaded on the same bit. Can someone from the Java side
explain why they're using the same bit? Especially since DECL_EXTERNAL has
a well defined meaning already. It seems to me using a lang specific flag
would make a lot more sense for METHOD_NATIVE.
jeff
^ permalink raw reply [flat|nested] 264+ messages in thread
* Re: assemble_external on .class files
1999-05-25 19:41 ` Jeffrey A Law
@ 1999-05-25 21:00 ` Per Bothner
1999-05-25 21:50 ` Jeffrey A Law
1999-05-31 21:36 ` Per Bothner
1999-05-31 21:36 ` Jeffrey A Law
1 sibling, 2 replies; 264+ messages in thread
From: Per Bothner @ 1999-05-25 21:00 UTC (permalink / raw)
To: law; +Cc: Mark Klein, egcs, java-discuss
Jeffrey A Law <law@cygnus.com> writes:
> Split up DECL_EXTERNAL and METHOD_NATIVE. It seems awful strange/wrong to
> have them overloaded on the same bit. Can someone from the Java side
> explain why they're using the same bit? Especially since DECL_EXTERNAL has
> a well defined meaning already. It seems to me using a lang specific flag
> would make a lot more sense for METHOD_NATIVE.
Well, the logic was the assumption that they would always be the same.
In a Java class, we have three kinds of methods:
(1) Regular methods (static or instance), with method bodies in the class
body. These methods are neither native, nor external, since they are
declared in the current input (.java or .class) file.
(2) Native methods, which do not have bodies. These must be bound to some
methods defined in some extenal C++ file. Hence, they need to have
DECL_EXTERNAL set - as well as METHOD_NATIVE.
(3) Abstract methods - which have no bodies anywhere. If they are ever
referenced, it would be a compiler bug.
I skimmed the earlier messages in this thread, which may be why I still don't
understand why there would be any reason to split up the flags.
However, perhaps there should be a comment where METHOD_NATIVE is
defined. Something like the following may suffice:
/* Only native methods are external (and vice versa). */
or perhaps:
/* A method is external if and only if it is native. */
--
--Per Bothner
bothner@pacbell.net http://home.pacbell.net/bothner/
^ permalink raw reply [flat|nested] 264+ messages in thread
* Re: assemble_external on .class files
1999-05-25 21:00 ` Per Bothner
@ 1999-05-25 21:50 ` Jeffrey A Law
1999-05-25 22:19 ` Mark Klein
1999-05-31 21:36 ` Jeffrey A Law
1999-05-31 21:36 ` Per Bothner
1 sibling, 2 replies; 264+ messages in thread
From: Jeffrey A Law @ 1999-05-25 21:50 UTC (permalink / raw)
To: Per Bothner; +Cc: Mark Klein, egcs, java-discuss
In message < m2n1yseark.fsf@magnus.cygnus.com >you write:
> Well, the logic was the assumption that they would always be the same.
>
> In a Java class, we have three kinds of methods:
>
> (1) Regular methods (static or instance), with method bodies in the class
> body. These methods are neither native, nor external, since they are
> declared in the current input (.java or .class) file.
>
> (2) Native methods, which do not have bodies. These must be bound to some
> methods defined in some extenal C++ file. Hence, they need to have
> DECL_EXTERNAL set - as well as METHOD_NATIVE.
>
> (3) Abstract methods - which have no bodies anywhere. If they are ever
> referenced, it would be a compiler bug.
Thanks. Hmmm, this makes me think that we're find with having them overloaded
on the same bit. Mark, I think this is a red herring.
> However, perhaps there should be a comment where METHOD_NATIVE is
> defined. Something like the following may suffice:
> /* Only native methods are external (and vice versa). */
> or perhaps:
> /* A method is external if and only if it is native. */
Yea. It would help clarify things for the future.
Thanks again!
jeff
^ permalink raw reply [flat|nested] 264+ messages in thread
* Re: assemble_external on .class files
1999-05-25 21:50 ` Jeffrey A Law
@ 1999-05-25 22:19 ` Mark Klein
1999-05-25 22:24 ` Jeffrey A Law
` (2 more replies)
1999-05-31 21:36 ` Jeffrey A Law
1 sibling, 3 replies; 264+ messages in thread
From: Mark Klein @ 1999-05-25 22:19 UTC (permalink / raw)
To: law, Per Bothner; +Cc: egcs, java-discuss
At 10:44 PM 5/25/99 -0600, Jeffrey A Law wrote:
>Thanks. Hmmm, this makes me think that we're find with having them overloaded
>on the same bit. Mark, I think this is a red herring.
Could be, but then there's a problem with assemble_external vis the usage of
DECL_EXTERNAL for the vtable. Recall my earlier example, from
java::lang::Object:
Method name:"finalize" protected Signature: 4=()void
...
Method name:"hashCode" public native Signature: 11=()int
and the vtable:
__vt_10HelloWorld
.word _CL_10HelloWorld
.word 0
.word P%finalize__Q34java4lang6Object
.IMPORT hashCode__Q34java4lang6Object,CODE
.word P%hashCode__Q34java4lang6Object
.word P%equals__Q34java4lang6ObjectPQ34java4lang6Object
.word P%toString__Q34java4lang6Object
.IMPORT clone__Q34java4lang6Object,CODE
.word P%clone__Q34java4lang6Object
Note that in order to use the plabels, the symbols must first be imported on
PA-RISC. In this case, we have finalize, and it isn't native. However, in
order for assemble_external to emit the .IMPORT, DECL_EXTERNAL (among others)
must be true. But, hashCode is native and is imported, hence the .IMPORT.
Since this is in contradiction to usage in jc1 as explained by Per, I've
got a problem....
Jeff (or any other PA-RISC user) ... has anyone tried gcj/libjava on a HP9000?
Or is this a problem only on the HP3000?
G'night, y'all.
--
Mark Klein DIS International, Ltd.
http://www.dis.com 415-892-8400
PGP Public Key Available
^ permalink raw reply [flat|nested] 264+ messages in thread
* Re: assemble_external on .class files
1999-05-25 22:19 ` Mark Klein
@ 1999-05-25 22:24 ` Jeffrey A Law
1999-05-31 21:36 ` Jeffrey A Law
1999-05-25 22:49 ` Per Bothner
1999-05-31 21:36 ` Mark Klein
2 siblings, 1 reply; 264+ messages in thread
From: Jeffrey A Law @ 1999-05-25 22:24 UTC (permalink / raw)
To: Mark Klein; +Cc: Per Bothner, egcs, java-discuss
In message < 4.1.19990525220502.00ca56a0@garfield.dis.com >you write:
> Jeff (or any other PA-RISC user) ... has anyone tried gcj/libjava on a
> HP9000?
Nobody that I'm aware of. I talked to Anthony Green a week or two about
some of this stuff and it sounds like x86-linux & sparc-solaris are the
native platforms that should "just work" out of the box since that's what
the Java team is using/testing regularly. So it's not a huge suprise that
we've got a few issues to resolve on the PA (and likely other targets).
jeff
^ permalink raw reply [flat|nested] 264+ messages in thread
* Re: assemble_external on .class files
1999-05-25 22:24 ` Jeffrey A Law
@ 1999-05-31 21:36 ` Jeffrey A Law
0 siblings, 0 replies; 264+ messages in thread
From: Jeffrey A Law @ 1999-05-31 21:36 UTC (permalink / raw)
To: Mark Klein; +Cc: Per Bothner, egcs, java-discuss
In message < 4.1.19990525220502.00ca56a0@garfield.dis.com >you write:
> Jeff (or any other PA-RISC user) ... has anyone tried gcj/libjava on a
> HP9000?
Nobody that I'm aware of. I talked to Anthony Green a week or two about
some of this stuff and it sounds like x86-linux & sparc-solaris are the
native platforms that should "just work" out of the box since that's what
the Java team is using/testing regularly. So it's not a huge suprise that
we've got a few issues to resolve on the PA (and likely other targets).
jeff
^ permalink raw reply [flat|nested] 264+ messages in thread
* Re: assemble_external on .class files
1999-05-25 22:19 ` Mark Klein
1999-05-25 22:24 ` Jeffrey A Law
@ 1999-05-25 22:49 ` Per Bothner
1999-05-31 14:53 ` Mark Klein
1999-05-31 21:36 ` Per Bothner
1999-05-31 21:36 ` Mark Klein
2 siblings, 2 replies; 264+ messages in thread
From: Per Bothner @ 1999-05-25 22:49 UTC (permalink / raw)
To: Mark Klein; +Cc: egcs, java-discuss
Mark Klein <mklein@dis.com> writes:
> Could be, but then there's a problem with assemble_external vis the usage of
> DECL_EXTERNAL for the vtable. Recall my earlier example, from
> java::lang::Object:
Ah - that was in a message that had expired.
My logic only applies to entries in the "method table". It is
wrong for entries in the vtable. It is also wrong for calls
to static methods in other classes.
METHOD_NATIVE does need to be split from DECL_EXTERNAL.
There doesn't seem to be any available DECL_LANG_FLAGs,
but there are some TREE_LANG_FLAGSs available (in FUNCTION_DECLs).
That means that we need to set DECL_EXTERNAL separately.
I think it should be true for any methods that has METHOD_NATIVE,
*or* if is_compiled_class (DECL_CONTEXT (method_decl)) < 2.
--Per Bothner
bothner@pacbell.net http://home.pacbell.net/bothner/
^ permalink raw reply [flat|nested] 264+ messages in thread
* Re: assemble_external on .class files
1999-05-25 22:49 ` Per Bothner
@ 1999-05-31 14:53 ` Mark Klein
1999-05-31 21:36 ` Mark Klein
1999-05-31 21:36 ` Per Bothner
1 sibling, 1 reply; 264+ messages in thread
From: Mark Klein @ 1999-05-31 14:53 UTC (permalink / raw)
To: Per Bothner; +Cc: egcs, java-discuss
At 10:55 PM 5/25/99 -0700, Per Bothner wrote:
>METHOD_NATIVE does need to be split from DECL_EXTERNAL.
>There doesn't seem to be any available DECL_LANG_FLAGs,
>but there are some TREE_LANG_FLAGSs available (in FUNCTION_DECLs).
Grabbed TREE_LANG_FLAG_6.
>That means that we need to set DECL_EXTERNAL separately.
>I think it should be true for any methods that has METHOD_NATIVE,
>*or* if is_compiled_class (DECL_CONTEXT (method_decl)) < 2.
The latter doesn't appear to be complete either since there are
certain classes which are external (e.g. java.lang.Object) where
is_compiled_class (DECL_CONTEXT (method_decl)) is returning 2.
Regards,
M.
--
Mark Klein DIS International, Ltd.
http://www.dis.com 415-892-8400
PGP Public Key Available
^ permalink raw reply [flat|nested] 264+ messages in thread
* Re: assemble_external on .class files
1999-05-31 14:53 ` Mark Klein
@ 1999-05-31 21:36 ` Mark Klein
0 siblings, 0 replies; 264+ messages in thread
From: Mark Klein @ 1999-05-31 21:36 UTC (permalink / raw)
To: Per Bothner; +Cc: egcs, java-discuss
At 10:55 PM 5/25/99 -0700, Per Bothner wrote:
>METHOD_NATIVE does need to be split from DECL_EXTERNAL.
>There doesn't seem to be any available DECL_LANG_FLAGs,
>but there are some TREE_LANG_FLAGSs available (in FUNCTION_DECLs).
Grabbed TREE_LANG_FLAG_6.
>That means that we need to set DECL_EXTERNAL separately.
>I think it should be true for any methods that has METHOD_NATIVE,
>*or* if is_compiled_class (DECL_CONTEXT (method_decl)) < 2.
The latter doesn't appear to be complete either since there are
certain classes which are external (e.g. java.lang.Object) where
is_compiled_class (DECL_CONTEXT (method_decl)) is returning 2.
Regards,
M.
--
Mark Klein DIS International, Ltd.
http://www.dis.com 415-892-8400
PGP Public Key Available
^ permalink raw reply [flat|nested] 264+ messages in thread
* Re: assemble_external on .class files
1999-05-25 22:49 ` Per Bothner
1999-05-31 14:53 ` Mark Klein
@ 1999-05-31 21:36 ` Per Bothner
1 sibling, 0 replies; 264+ messages in thread
From: Per Bothner @ 1999-05-31 21:36 UTC (permalink / raw)
To: Mark Klein; +Cc: egcs, java-discuss
Mark Klein <mklein@dis.com> writes:
> Could be, but then there's a problem with assemble_external vis the usage of
> DECL_EXTERNAL for the vtable. Recall my earlier example, from
> java::lang::Object:
Ah - that was in a message that had expired.
My logic only applies to entries in the "method table". It is
wrong for entries in the vtable. It is also wrong for calls
to static methods in other classes.
METHOD_NATIVE does need to be split from DECL_EXTERNAL.
There doesn't seem to be any available DECL_LANG_FLAGs,
but there are some TREE_LANG_FLAGSs available (in FUNCTION_DECLs).
That means that we need to set DECL_EXTERNAL separately.
I think it should be true for any methods that has METHOD_NATIVE,
*or* if is_compiled_class (DECL_CONTEXT (method_decl)) < 2.
--Per Bothner
bothner@pacbell.net http://home.pacbell.net/bothner/
^ permalink raw reply [flat|nested] 264+ messages in thread
* Re: assemble_external on .class files
1999-05-25 22:19 ` Mark Klein
1999-05-25 22:24 ` Jeffrey A Law
1999-05-25 22:49 ` Per Bothner
@ 1999-05-31 21:36 ` Mark Klein
2 siblings, 0 replies; 264+ messages in thread
From: Mark Klein @ 1999-05-31 21:36 UTC (permalink / raw)
To: law, Per Bothner; +Cc: egcs, java-discuss
At 10:44 PM 5/25/99 -0600, Jeffrey A Law wrote:
>Thanks. Hmmm, this makes me think that we're find with having them overloaded
>on the same bit. Mark, I think this is a red herring.
Could be, but then there's a problem with assemble_external vis the usage of
DECL_EXTERNAL for the vtable. Recall my earlier example, from
java::lang::Object:
Method name:"finalize" protected Signature: 4=()void
...
Method name:"hashCode" public native Signature: 11=()int
and the vtable:
__vt_10HelloWorld
.word _CL_10HelloWorld
.word 0
.word P%finalize__Q34java4lang6Object
.IMPORT hashCode__Q34java4lang6Object,CODE
.word P%hashCode__Q34java4lang6Object
.word P%equals__Q34java4lang6ObjectPQ34java4lang6Object
.word P%toString__Q34java4lang6Object
.IMPORT clone__Q34java4lang6Object,CODE
.word P%clone__Q34java4lang6Object
Note that in order to use the plabels, the symbols must first be imported on
PA-RISC. In this case, we have finalize, and it isn't native. However, in
order for assemble_external to emit the .IMPORT, DECL_EXTERNAL (among others)
must be true. But, hashCode is native and is imported, hence the .IMPORT.
Since this is in contradiction to usage in jc1 as explained by Per, I've
got a problem....
Jeff (or any other PA-RISC user) ... has anyone tried gcj/libjava on a HP9000?
Or is this a problem only on the HP3000?
G'night, y'all.
--
Mark Klein DIS International, Ltd.
http://www.dis.com 415-892-8400
PGP Public Key Available
^ permalink raw reply [flat|nested] 264+ messages in thread
* Re: assemble_external on .class files
1999-05-25 21:50 ` Jeffrey A Law
1999-05-25 22:19 ` Mark Klein
@ 1999-05-31 21:36 ` Jeffrey A Law
1 sibling, 0 replies; 264+ messages in thread
From: Jeffrey A Law @ 1999-05-31 21:36 UTC (permalink / raw)
To: Per Bothner; +Cc: Mark Klein, egcs, java-discuss
In message < m2n1yseark.fsf@magnus.cygnus.com >you write:
> Well, the logic was the assumption that they would always be the same.
>
> In a Java class, we have three kinds of methods:
>
> (1) Regular methods (static or instance), with method bodies in the class
> body. These methods are neither native, nor external, since they are
> declared in the current input (.java or .class) file.
>
> (2) Native methods, which do not have bodies. These must be bound to some
> methods defined in some extenal C++ file. Hence, they need to have
> DECL_EXTERNAL set - as well as METHOD_NATIVE.
>
> (3) Abstract methods - which have no bodies anywhere. If they are ever
> referenced, it would be a compiler bug.
Thanks. Hmmm, this makes me think that we're find with having them overloaded
on the same bit. Mark, I think this is a red herring.
> However, perhaps there should be a comment where METHOD_NATIVE is
> defined. Something like the following may suffice:
> /* Only native methods are external (and vice versa). */
> or perhaps:
> /* A method is external if and only if it is native. */
Yea. It would help clarify things for the future.
Thanks again!
jeff
^ permalink raw reply [flat|nested] 264+ messages in thread
* Re: assemble_external on .class files
1999-05-25 21:00 ` Per Bothner
1999-05-25 21:50 ` Jeffrey A Law
@ 1999-05-31 21:36 ` Per Bothner
1 sibling, 0 replies; 264+ messages in thread
From: Per Bothner @ 1999-05-31 21:36 UTC (permalink / raw)
To: law; +Cc: Mark Klein, egcs, java-discuss
Jeffrey A Law <law@cygnus.com> writes:
> Split up DECL_EXTERNAL and METHOD_NATIVE. It seems awful strange/wrong to
> have them overloaded on the same bit. Can someone from the Java side
> explain why they're using the same bit? Especially since DECL_EXTERNAL has
> a well defined meaning already. It seems to me using a lang specific flag
> would make a lot more sense for METHOD_NATIVE.
Well, the logic was the assumption that they would always be the same.
In a Java class, we have three kinds of methods:
(1) Regular methods (static or instance), with method bodies in the class
body. These methods are neither native, nor external, since they are
declared in the current input (.java or .class) file.
(2) Native methods, which do not have bodies. These must be bound to some
methods defined in some extenal C++ file. Hence, they need to have
DECL_EXTERNAL set - as well as METHOD_NATIVE.
(3) Abstract methods - which have no bodies anywhere. If they are ever
referenced, it would be a compiler bug.
I skimmed the earlier messages in this thread, which may be why I still don't
understand why there would be any reason to split up the flags.
However, perhaps there should be a comment where METHOD_NATIVE is
defined. Something like the following may suffice:
/* Only native methods are external (and vice versa). */
or perhaps:
/* A method is external if and only if it is native. */
--
--Per Bothner
bothner@pacbell.net http://home.pacbell.net/bothner/
^ permalink raw reply [flat|nested] 264+ messages in thread
* Re: assemble_external on .class files
1999-05-25 19:41 ` Jeffrey A Law
1999-05-25 21:00 ` Per Bothner
@ 1999-05-31 21:36 ` Jeffrey A Law
1 sibling, 0 replies; 264+ messages in thread
From: Jeffrey A Law @ 1999-05-31 21:36 UTC (permalink / raw)
To: Mark Klein; +Cc: egcs, java-discuss
In message < 4.1.19990525180956.00c96100@garfield.dis.com >you write:
> Turns out that this also isn't a complete solution, partially because
> assemble_external is looking for DECL_EXTERNAL. The tree field used
> for DECL_EXTERNAL is also used for METHOD_NATIVE for java. That also
> explains why certain .IMPORTs were happening and others were not ...
> only native methods were getting the .IMPORTs.
>
> There may be another problem here in that DECL_EXTERNAL is explicitly
> set in various places and could ultimately end up in a usage conflict
> between it and the usage of METHOD_NATIVE elswhere in the code.
>
> Suggestions?
Split up DECL_EXTERNAL and METHOD_NATIVE. It seems awful strange/wrong to
have them overloaded on the same bit. Can someone from the Java side
explain why they're using the same bit? Especially since DECL_EXTERNAL has
a well defined meaning already. It seems to me using a lang specific flag
would make a lot more sense for METHOD_NATIVE.
jeff
^ permalink raw reply [flat|nested] 264+ messages in thread
* Re: assemble_external on .class files
1999-05-25 18:33 ` Mark Klein
1999-05-25 19:41 ` Jeffrey A Law
@ 1999-05-31 21:36 ` Mark Klein
1 sibling, 0 replies; 264+ messages in thread
From: Mark Klein @ 1999-05-31 21:36 UTC (permalink / raw)
To: Jeffrey A Law; +Cc: egcs, java-discuss
At 03:19 PM 5/22/99 -0600, Jeffrey A Law wrote:
> > My first attempt at
> > resolving this was to place an assemble_external() in
layout_class_method(),
> > but that results in a lot of clutter with .IMPORT statements for a
> > whole bunch of things that really are not referenced.
>I wouldn't worry about the extra .IMPORTs. In fact, it's a little known
>aspect of SOM that the assembler is responsible for _not_ adding an imported
>symbol to the undefined symbols for a module if that symbol is not actually
>referenced.
Turns out that this also isn't a complete solution, partially because
assemble_external is looking for DECL_EXTERNAL. The tree field used
for DECL_EXTERNAL is also used for METHOD_NATIVE for java. That also
explains why certain .IMPORTs were happening and others were not ...
only native methods were getting the .IMPORTs.
There may be another problem here in that DECL_EXTERNAL is explicitly
set in various places and could ultimately end up in a usage conflict
between it and the usage of METHOD_NATIVE elswhere in the code.
Suggestions?
M.
--
Mark Klein DIS International, Ltd.
http://www.dis.com 415-892-8400
PGP Public Key Available
^ permalink raw reply [flat|nested] 264+ messages in thread
* Re: assemble_external on .class files
1999-05-22 14:23 ` Jeffrey A Law
1999-05-22 15:28 ` Mark Klein
1999-05-25 18:33 ` Mark Klein
@ 1999-05-31 21:36 ` Jeffrey A Law
2 siblings, 0 replies; 264+ messages in thread
From: Jeffrey A Law @ 1999-05-31 21:36 UTC (permalink / raw)
To: Mark Klein; +Cc: egcs, java-discuss
In message < 4.1.19990520204749.00c7fa90@garfield.dis.com >you write:
> External procedure labels need to be .IMPORTED before they can
> be used on my platform. Some of these are part of a dispatch table
> created from classes such as java::lang::Object. My first attempt at
> resolving this was to place an assemble_external() in layout_class(),
> but that results in a lot of clutter with .IMPORT statements for a
> whole bunch of things that really are not referenced. I suppose this
> could be my brute force method, but I would prefer to only do the
> .IMPORT for referenced methods/classes.
I wouldn't worry about the extra .IMPORTs. In fact, it's a little known
aspect of SOM that the assembler is responsible for _not_ adding an imported
symbol to the undefined symbols for a module if that symbol is not actually
referenced.
Jeff
^ permalink raw reply [flat|nested] 264+ messages in thread
* assemble_external on .class files
1999-05-20 21:06 assemble_external on .class files Mark Klein
1999-05-22 14:23 ` Jeffrey A Law
@ 1999-05-31 21:36 ` Mark Klein
1 sibling, 0 replies; 264+ messages in thread
From: Mark Klein @ 1999-05-31 21:36 UTC (permalink / raw)
To: egcs; +Cc: java-discuss
I'm having a whale of a time trying to figure out a problem I'm
experiencing with gcj:
External procedure labels need to be .IMPORTED before they can
be used on my platform. Some of these are part of a dispatch table
created from classes such as java::lang::Object. My first attempt at
resolving this was to place an assemble_external() in layout_class(),
but that results in a lot of clutter with .IMPORT statements for a
whole bunch of things that really are not referenced. I suppose this
could be my brute force method, but I would prefer to only do the
.IMPORT for referenced methods/classes.
Here's HelloWorld's _vt_:
.IMPORT clone__Q34java4lang6Object,CODE
.IMPORT hashCode__Q34java4lang6Object,CODE
.align 4
HelloWorld virtual table
.word _CL_10HelloWorld
.word 0
.word P%java::lang::Object::finalize(void)
.word P%java::lang::Object::hashCode(void)
.word P%java::lang::Object::equals(java::lang::Object *)
.word P%java::lang::Object::toString(void)
.word P%java::lang::Object::clone(void)
Note that clone() and hashCode() have been imported. But finalize(),
equals() and tostring() have not. They are referenced in some fashion
in order to be in the virtual table when the rest of their brethren
are not. But, clone() and hashCode() must be referenced in some other
path in order to cause them to be imported.
I can't seem to figure out what that path is in order to make the same
changes for the other case. I also have not completed by gdb port, so
I am debugging this with the native (non-symbolic) debugger, which is
also probably leading to some of my confusion as I chase pointers in trees.
TIA,
M.
--
Mark Klein DIS International, Ltd.
http://www.dis.com 415-892-8400
PGP Public Key Available
^ permalink raw reply [flat|nested] 264+ messages in thread
* Bug in libm or libstdc++.
@ 1999-02-24 15:13 Paul Derbyshire
[not found] ` < 3.0.6.32.19990222090333.00847df0@pop.globalserve.net >
1999-02-28 22:53 ` Paul Derbyshire
0 siblings, 2 replies; 264+ messages in thread
From: Paul Derbyshire @ 1999-02-24 15:13 UTC (permalink / raw)
To: egcs, egcs-bugs
C:\PGD\C++\omega\ofc>gcc ntst.cc -o ntst.exe -Wall -lm -lstdcxx
c:/djgpp/tmp/cc5PNfut.o(.text+0x51):ntst.cc: undefined reference to
`atan(long double)'
c:/djgpp/tmp/cc5PNfut.o(.text+0xa8):ntst.cc: undefined reference to
`exp(long double)'
c:/djgpp/tmp/cc5PNfut.o(.text+0xef):ntst.cc: undefined reference to
`log(long double)'
c:/djgpp/tmp/cc5PNfut.o(.text+0x136):ntst.cc: undefined reference to
`log(long double)'
c:/djgpp/tmp/cc5PNfut.o(.text+0x17d):ntst.cc: undefined reference to
`sqrt(long double)'
What the hell?
Stroustrup 3rd Ed definitely informs me that long double overloads for
these and other functions are supposed to be in either libm or libstdc++.
Using egcs 1.1.1 and the libm and libstdc++ that came with it.
--
.*. "Clouds are not spheres, mountains are not cones, coastlines are not
-() < circles, and bark is not smooth, nor does lightning travel in a
`*' straight line." -------------------------------------------------
-- B. Mandelbrot | http://surf.to/pgd.net
_____________________ ____|________ Paul Derbyshire pderbysh@usa.net
Programmer & Humanist|ICQ: 10423848|
^ permalink raw reply [flat|nested] 264+ messages in thread
[parent not found: < 3.0.6.32.19990222090333.00847df0@pop.globalserve.net >]
* Re: Bug in libm or libstdc++.
[not found] ` < 3.0.6.32.19990222090333.00847df0@pop.globalserve.net >
@ 1999-02-24 15:34 ` Joe Buck
[not found] ` < 199902242332.PAA09334@atrus.synopsys.com >
1999-02-28 22:53 ` Joe Buck
1999-02-24 15:42 ` Bob McWhirter
1 sibling, 2 replies; 264+ messages in thread
From: Joe Buck @ 1999-02-24 15:34 UTC (permalink / raw)
To: Paul Derbyshire; +Cc: egcs, egcs-bugs
[ no "long double" overloads of math functions ]
> Stroustrup 3rd Ed definitely informs me that long double overloads for
> these and other functions are supposed to be in either libm or libstdc++.
You have already been informed that libstdc++ is not complete. Sorry.
^ permalink raw reply [flat|nested] 264+ messages in thread
[parent not found: < 199902242332.PAA09334@atrus.synopsys.com >]
* Re: Bug in libm or libstdc++.
[not found] ` < 199902242332.PAA09334@atrus.synopsys.com >
@ 1999-02-25 22:25 ` Paul Derbyshire
[not found] ` < 3.0.6.32.19990226012513.008e5450@pop.globalserve.net >
1999-02-28 22:53 ` Paul Derbyshire
0 siblings, 2 replies; 264+ messages in thread
From: Paul Derbyshire @ 1999-02-25 22:25 UTC (permalink / raw)
To: egcs
At 03:32 PM 2/24/99 PST, you wrote:
>You have already been informed that libstdc++ is not complete. Sorry.
The standard has been around in largely complete form for over a year, and
finalized for many months. I am curious as to what is the cause for all of
these omissions... I would love to help but I don't know the first thing
about implementing these mathematical functions.
In any case, to avoid any more unpleasant surprised I would like to see a
list of all the omissions in the current libstdc++ and other
non-conformances, and where possible ETAs for the missing components. It
would be a good idea to post a periodic libstdc++ progress report and calls
for volunteers to implement some of the stuff. I think that might attract
more developers to fixing up and finishing implementing the standard C++
library.
An area where I may be able to help is with the standard valarray and its
friends, once I get back a response regarding making the compiler eliminate
temporaries and excess copies in argument passing and return.
--
.*. "Clouds are not spheres, mountains are not cones, coastlines are not
-() < circles, and bark is not smooth, nor does lightning travel in a
`*' straight line." -------------------------------------------------
-- B. Mandelbrot | http://surf.to/pgd.net
_____________________ ____|________ Paul Derbyshire pderbysh@usa.net
Programmer & Humanist|ICQ: 10423848|
^ permalink raw reply [flat|nested] 264+ messages in thread
[parent not found: < 3.0.6.32.19990226012513.008e5450@pop.globalserve.net >]
* Re: Bug in libm or libstdc++.
[not found] ` < 3.0.6.32.19990226012513.008e5450@pop.globalserve.net >
@ 1999-02-26 10:38 ` Joe Buck
[not found] ` < 199902261836.KAA17757@atrus.synopsys.com >
1999-02-28 22:53 ` Joe Buck
0 siblings, 2 replies; 264+ messages in thread
From: Joe Buck @ 1999-02-26 10:38 UTC (permalink / raw)
To: Paul Derbyshire; +Cc: egcs
> At 03:32 PM 2/24/99 PST, you wrote:
> >You have already been informed that libstdc++ is not complete. Sorry.
>
> The standard has been around in largely complete form for over a year, and
> finalized for many months. I am curious as to what is the cause for all of
> these omissions...
Limited resources. Up to now most resources have been concentrated on
completing the compiler portion of the standard, and we are very close.
The only significant unimplemented feature is "export".
> In any case, to avoid any more unpleasant surprised I would like to see a
> list of all the omissions in the current libstdc++ and other
> non-conformances, and where possible ETAs for the missing components.
If you would like to volunteer to assemble such a list, and do most of
the research yourself, you might find that others are willing to help.
If you continue to demand that others do work, you will probably just
create more hostility.
As for ETAs, in the free software world the only answer you will get is
"when it's ready".
> It
> would be a good idea to post a periodic libstdc++ progress report and calls
> for volunteers to implement some of the stuff. I think that might attract
> more developers to fixing up and finishing implementing the standard C++
> library.
See http://sourceware.cygnus.com/libstdc++/
> An area where I may be able to help is with the standard valarray and its
> friends, once I get back a response regarding making the compiler eliminate
> temporaries and excess copies in argument passing and return.
Again, see above.
^ permalink raw reply [flat|nested] 264+ messages in thread
[parent not found: < 199902261836.KAA17757@atrus.synopsys.com >]
* Re: Bug in libm or libstdc++.
[not found] ` < 199902261836.KAA17757@atrus.synopsys.com >
@ 1999-02-26 22:21 ` Paul Derbyshire
[not found] ` < 3.0.6.32.19990227012120.0084e180@pop.globalserve.net >
1999-02-28 22:53 ` Paul Derbyshire
0 siblings, 2 replies; 264+ messages in thread
From: Paul Derbyshire @ 1999-02-26 22:21 UTC (permalink / raw)
To: egcs
At 10:36 AM 2/26/99 PST, you wrote:
>Limited resources. Up to now most resources have been concentrated on
>completing the compiler portion of the standard, and we are very close.
>The only significant unimplemented feature is "export".
My copy of Stroustrup makes no mention of "export", IIRC.
>If you would like to volunteer to assemble such a list...
Ack!
Well, for starters:
* <valarray> to be implemented
* <limits> to be implemented
* "void (*foo) (void) throw ();" causes a spurious error
* IIRC stringstreams and <sstream> were incomplete/missing
Anyone else who'se noticed an omission/incomplete thing/bug in C++ support
that isn't platform-dependent is welcome to add to the list.
>As for ETAs, in the free software world the only answer you will get is
>"when it's ready".
Or "when you do it yourself" right? <g>
I may be able to cobble together a draft of a working <valarray>. If I come
up with one amidst all the other work I'm doing on my own stuff, I'll be
sure to offer it here.
>See http://sourceware.cygnus.com/libstdc++/
OK
--
.*. "Clouds are not spheres, mountains are not cones, coastlines are not
-() < circles, and bark is not smooth, nor does lightning travel in a
`*' straight line." -------------------------------------------------
-- B. Mandelbrot | http://surf.to/pgd.net
_____________________ ____|________ Paul Derbyshire pderbysh@usa.net
Programmer & Humanist|ICQ: 10423848|
^ permalink raw reply [flat|nested] 264+ messages in thread
[parent not found: < 3.0.6.32.19990227012120.0084e180@pop.globalserve.net >]
* Re: Bug in libm or libstdc++.
[not found] ` < 3.0.6.32.19990227012120.0084e180@pop.globalserve.net >
@ 1999-02-27 9:40 ` Marc Espie
[not found] ` < 199902271740.SAA14323@quatramaran.ens.fr >
1999-02-28 22:53 ` Marc Espie
0 siblings, 2 replies; 264+ messages in thread
From: Marc Espie @ 1999-02-27 9:40 UTC (permalink / raw)
To: egcs
In article < 3.0.6.32.19990227012120.0084e180@pop.globalserve.net > you write:
>At 10:36 AM 2/26/99 PST, you wrote:
>>Limited resources. Up to now most resources have been concentrated on
>>completing the compiler portion of the standard, and we are very close.
>>The only significant unimplemented feature is "export".
>My copy of Stroustrup makes no mention of "export", IIRC.
Get a newer one, or better yet, get a clue.
I have the chance to read the egcs-ml thru an email to local news
gateway.
You know what ? You're the first individual to make my kill-file on this list.
^ permalink raw reply [flat|nested] 264+ messages in thread
[parent not found: < 199902271740.SAA14323@quatramaran.ens.fr >]
* Re: Bug in libm or libstdc++.
[not found] ` < 199902271740.SAA14323@quatramaran.ens.fr >
@ 1999-02-27 20:45 ` Paul Derbyshire
1999-02-28 22:53 ` Paul Derbyshire
1999-03-01 0:19 ` Alexandre Oliva
0 siblings, 2 replies; 264+ messages in thread
From: Paul Derbyshire @ 1999-02-27 20:45 UTC (permalink / raw)
To: egcs
At 06:40 PM 2/27/99 +0100, you wrote:
>Get a newer one, or better yet, get a clue.
1. I have THE 3RD EDITION, in other words THE MOST RECENT VERSION, as
I've mentioned a few times before.
2. There is no need to be insulting. We're all mature adults here...or
at least I thought we were...
--
.*. "Clouds are not spheres, mountains are not cones, coastlines are not
-() < circles, and bark is not smooth, nor does lightning travel in a
`*' straight line." -------------------------------------------------
-- B. Mandelbrot | http://surf.to/pgd.net
_____________________ ____|________ Paul Derbyshire pderbysh@usa.net
Programmer & Humanist|ICQ: 10423848|
^ permalink raw reply [flat|nested] 264+ messages in thread
* Re: Bug in libm or libstdc++.
1999-02-27 20:45 ` Paul Derbyshire
@ 1999-02-28 22:53 ` Paul Derbyshire
1999-03-01 0:19 ` Alexandre Oliva
1 sibling, 0 replies; 264+ messages in thread
From: Paul Derbyshire @ 1999-02-28 22:53 UTC (permalink / raw)
To: egcs
At 06:40 PM 2/27/99 +0100, you wrote:
>Get a newer one, or better yet, get a clue.
1. I have THE 3RD EDITION, in other words THE MOST RECENT VERSION, as
I've mentioned a few times before.
2. There is no need to be insulting. We're all mature adults here...or
at least I thought we were...
--
.*. "Clouds are not spheres, mountains are not cones, coastlines are not
-() < circles, and bark is not smooth, nor does lightning travel in a
`*' straight line." -------------------------------------------------
-- B. Mandelbrot | http://surf.to/pgd.net
_____________________ ____|________ Paul Derbyshire pderbysh@usa.net
Programmer & Humanist|ICQ: 10423848|
^ permalink raw reply [flat|nested] 264+ messages in thread
* Re: Bug in libm or libstdc++.
1999-02-27 20:45 ` Paul Derbyshire
1999-02-28 22:53 ` Paul Derbyshire
@ 1999-03-01 0:19 ` Alexandre Oliva
[not found] ` < ord82tlj4l.fsf@araguaia.dcc.unicamp.br >
1999-03-31 23:46 ` Alexandre Oliva
1 sibling, 2 replies; 264+ messages in thread
From: Alexandre Oliva @ 1999-03-01 0:19 UTC (permalink / raw)
To: Paul Derbyshire; +Cc: egcs
[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain, Size: 589 bytes --]
On Feb 28, 1999, Paul Derbyshire <pderbysh@usa.net> wrote:
> At 06:40 PM 2/27/99 +0100, you wrote:
>> Get a newer one, or better yet, get a clue.
> 1. I have THE 3RD EDITION, in other words THE MOST RECENT VERSION, as
> I've mentioned a few times before.
It is outdated anyway. It is not the ANSI C++ Standard, and egcs
targets the ANSI C++ Standard, not the ARM.
--
Alexandre Oliva http://www.dcc.unicamp.br/~oliva aoliva@{acm.org,computer.org}
oliva@{dcc.unicamp.br,gnu.org,egcs.cygnus.com,samba.org}
Instituto de Computação, Universidade Estadual de Campinas, SP, Brasil
^ permalink raw reply [flat|nested] 264+ messages in thread
[parent not found: < ord82tlj4l.fsf@araguaia.dcc.unicamp.br >]
* Re: Bug in libm or libstdc++.
[not found] ` < ord82tlj4l.fsf@araguaia.dcc.unicamp.br >
@ 1999-03-02 7:58 ` Paul Derbyshire
1999-03-02 23:08 ` Alexandre Oliva
1999-03-31 23:46 ` Paul Derbyshire
0 siblings, 2 replies; 264+ messages in thread
From: Paul Derbyshire @ 1999-03-02 7:58 UTC (permalink / raw)
To: egcs
At 05:16 AM 3/1/99 -0300, you wrote:
>> 1. I have THE 3RD EDITION, in other words THE MOST RECENT VERSION, as
>> I've mentioned a few times before.
>
>It is outdated anyway.
No it is not. It's the most recent version around, so it isn't possible for
it to be outdated, especially since if it were, this would be completely
unacceptable, as it would imply that there is no up-to-date reference, and
that of course just can't have been allowed.
>...egcs targets the ANSI C++ Standard, not the ARM.
What is "the ARM"?
(Note: Search engine results: 725,480 hits, of which none on the
first page are relevant. Search engines are simply not usable for
finding this stuff out! Unless you honestly expect me to read
through 72,548 pages and 725,480 URLs and descriptions before
asking any questions, which would be ludicruous.)
In any case, quit accusing me of ignorance of the C++ essentials and quit
accusing, of all people, Bjarne Stroustrup of same. BTW, this is veering
rapidly off-topic due to you.
--
.*. "Clouds are not spheres, mountains are not cones, coastlines are not
-() < circles, and bark is not smooth, nor does lightning travel in a
`*' straight line." -------------------------------------------------
-- B. Mandelbrot | http://surf.to/pgd.net
_____________________ ____|________ Paul Derbyshire pderbysh@usa.net
Programmer & Humanist|ICQ: 10423848|
^ permalink raw reply [flat|nested] 264+ messages in thread
* Re: Bug in libm or libstdc++.
1999-03-02 7:58 ` Paul Derbyshire
@ 1999-03-02 23:08 ` Alexandre Oliva
1999-03-31 23:46 ` Alexandre Oliva
1999-03-31 23:46 ` Paul Derbyshire
1 sibling, 1 reply; 264+ messages in thread
From: Alexandre Oliva @ 1999-03-02 23:08 UTC (permalink / raw)
To: Paul Derbyshire; +Cc: egcs
[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain, Size: 424 bytes --]
On Mar 2, 1999, Paul Derbyshire <pderbysh@usa.net> wrote:
>> ...egcs targets the ANSI C++ Standard, not the ARM.
> What is "the ARM"?
The ARM is Stroustrup's book. It is not the ANSI/ISO C++ Standard.
--
Alexandre Oliva http://www.dcc.unicamp.br/~oliva aoliva@{acm.org,computer.org}
oliva@{dcc.unicamp.br,gnu.org,egcs.cygnus.com,samba.org}
Instituto de Computação, Universidade Estadual de Campinas, SP, Brasil
^ permalink raw reply [flat|nested] 264+ messages in thread
* Re: Bug in libm or libstdc++.
1999-03-02 23:08 ` Alexandre Oliva
@ 1999-03-31 23:46 ` Alexandre Oliva
0 siblings, 0 replies; 264+ messages in thread
From: Alexandre Oliva @ 1999-03-31 23:46 UTC (permalink / raw)
To: Paul Derbyshire; +Cc: egcs
[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain, Size: 425 bytes --]
On Mar 2, 1999, Paul Derbyshire <pderbysh@usa.net> wrote:
>> ...egcs targets the ANSI C++ Standard, not the ARM.
> What is "the ARM"?
The ARM is Stroustrup's book. It is not the ANSI/ISO C++ Standard.
--
Alexandre Oliva http://www.dcc.unicamp.br/~oliva aoliva@{acm.org,computer.org}
oliva@{dcc.unicamp.br,gnu.org,egcs.cygnus.com,samba.org}
Instituto de Computação, Universidade Estadual de Campinas, SP, Brasil
^ permalink raw reply [flat|nested] 264+ messages in thread
* Re: Bug in libm or libstdc++.
1999-03-02 7:58 ` Paul Derbyshire
1999-03-02 23:08 ` Alexandre Oliva
@ 1999-03-31 23:46 ` Paul Derbyshire
1 sibling, 0 replies; 264+ messages in thread
From: Paul Derbyshire @ 1999-03-31 23:46 UTC (permalink / raw)
To: egcs
At 05:16 AM 3/1/99 -0300, you wrote:
>> 1. I have THE 3RD EDITION, in other words THE MOST RECENT VERSION, as
>> I've mentioned a few times before.
>
>It is outdated anyway.
No it is not. It's the most recent version around, so it isn't possible for
it to be outdated, especially since if it were, this would be completely
unacceptable, as it would imply that there is no up-to-date reference, and
that of course just can't have been allowed.
>...egcs targets the ANSI C++ Standard, not the ARM.
What is "the ARM"?
(Note: Search engine results: 725,480 hits, of which none on the
first page are relevant. Search engines are simply not usable for
finding this stuff out! Unless you honestly expect me to read
through 72,548 pages and 725,480 URLs and descriptions before
asking any questions, which would be ludicruous.)
In any case, quit accusing me of ignorance of the C++ essentials and quit
accusing, of all people, Bjarne Stroustrup of same. BTW, this is veering
rapidly off-topic due to you.
--
.*. "Clouds are not spheres, mountains are not cones, coastlines are not
-() < circles, and bark is not smooth, nor does lightning travel in a
`*' straight line." -------------------------------------------------
-- B. Mandelbrot | http://surf.to/pgd.net
_____________________ ____|________ Paul Derbyshire pderbysh@usa.net
Programmer & Humanist|ICQ: 10423848|
^ permalink raw reply [flat|nested] 264+ messages in thread
* Re: Bug in libm or libstdc++.
1999-03-01 0:19 ` Alexandre Oliva
[not found] ` < ord82tlj4l.fsf@araguaia.dcc.unicamp.br >
@ 1999-03-31 23:46 ` Alexandre Oliva
1 sibling, 0 replies; 264+ messages in thread
From: Alexandre Oliva @ 1999-03-31 23:46 UTC (permalink / raw)
To: Paul Derbyshire; +Cc: egcs
[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain, Size: 590 bytes --]
On Feb 28, 1999, Paul Derbyshire <pderbysh@usa.net> wrote:
> At 06:40 PM 2/27/99 +0100, you wrote:
>> Get a newer one, or better yet, get a clue.
> 1. I have THE 3RD EDITION, in other words THE MOST RECENT VERSION, as
> I've mentioned a few times before.
It is outdated anyway. It is not the ANSI C++ Standard, and egcs
targets the ANSI C++ Standard, not the ARM.
--
Alexandre Oliva http://www.dcc.unicamp.br/~oliva aoliva@{acm.org,computer.org}
oliva@{dcc.unicamp.br,gnu.org,egcs.cygnus.com,samba.org}
Instituto de Computação, Universidade Estadual de Campinas, SP, Brasil
^ permalink raw reply [flat|nested] 264+ messages in thread
* Re: Bug in libm or libstdc++.
1999-02-27 9:40 ` Marc Espie
[not found] ` < 199902271740.SAA14323@quatramaran.ens.fr >
@ 1999-02-28 22:53 ` Marc Espie
1 sibling, 0 replies; 264+ messages in thread
From: Marc Espie @ 1999-02-28 22:53 UTC (permalink / raw)
To: egcs
In article < 3.0.6.32.19990227012120.0084e180@pop.globalserve.net > you write:
>At 10:36 AM 2/26/99 PST, you wrote:
>>Limited resources. Up to now most resources have been concentrated on
>>completing the compiler portion of the standard, and we are very close.
>>The only significant unimplemented feature is "export".
>My copy of Stroustrup makes no mention of "export", IIRC.
Get a newer one, or better yet, get a clue.
I have the chance to read the egcs-ml thru an email to local news
gateway.
You know what ? You're the first individual to make my kill-file on this list.
^ permalink raw reply [flat|nested] 264+ messages in thread
* Re: Bug in libm or libstdc++.
1999-02-26 22:21 ` Paul Derbyshire
[not found] ` < 3.0.6.32.19990227012120.0084e180@pop.globalserve.net >
@ 1999-02-28 22:53 ` Paul Derbyshire
1 sibling, 0 replies; 264+ messages in thread
From: Paul Derbyshire @ 1999-02-28 22:53 UTC (permalink / raw)
To: egcs
At 10:36 AM 2/26/99 PST, you wrote:
>Limited resources. Up to now most resources have been concentrated on
>completing the compiler portion of the standard, and we are very close.
>The only significant unimplemented feature is "export".
My copy of Stroustrup makes no mention of "export", IIRC.
>If you would like to volunteer to assemble such a list...
Ack!
Well, for starters:
* <valarray> to be implemented
* <limits> to be implemented
* "void (*foo) (void) throw ();" causes a spurious error
* IIRC stringstreams and <sstream> were incomplete/missing
Anyone else who'se noticed an omission/incomplete thing/bug in C++ support
that isn't platform-dependent is welcome to add to the list.
>As for ETAs, in the free software world the only answer you will get is
>"when it's ready".
Or "when you do it yourself" right? <g>
I may be able to cobble together a draft of a working <valarray>. If I come
up with one amidst all the other work I'm doing on my own stuff, I'll be
sure to offer it here.
>See http://sourceware.cygnus.com/libstdc++/
OK
--
.*. "Clouds are not spheres, mountains are not cones, coastlines are not
-() < circles, and bark is not smooth, nor does lightning travel in a
`*' straight line." -------------------------------------------------
-- B. Mandelbrot | http://surf.to/pgd.net
_____________________ ____|________ Paul Derbyshire pderbysh@usa.net
Programmer & Humanist|ICQ: 10423848|
^ permalink raw reply [flat|nested] 264+ messages in thread
* Re: Bug in libm or libstdc++.
1999-02-26 10:38 ` Joe Buck
[not found] ` < 199902261836.KAA17757@atrus.synopsys.com >
@ 1999-02-28 22:53 ` Joe Buck
1 sibling, 0 replies; 264+ messages in thread
From: Joe Buck @ 1999-02-28 22:53 UTC (permalink / raw)
To: Paul Derbyshire; +Cc: egcs
> At 03:32 PM 2/24/99 PST, you wrote:
> >You have already been informed that libstdc++ is not complete. Sorry.
>
> The standard has been around in largely complete form for over a year, and
> finalized for many months. I am curious as to what is the cause for all of
> these omissions...
Limited resources. Up to now most resources have been concentrated on
completing the compiler portion of the standard, and we are very close.
The only significant unimplemented feature is "export".
> In any case, to avoid any more unpleasant surprised I would like to see a
> list of all the omissions in the current libstdc++ and other
> non-conformances, and where possible ETAs for the missing components.
If you would like to volunteer to assemble such a list, and do most of
the research yourself, you might find that others are willing to help.
If you continue to demand that others do work, you will probably just
create more hostility.
As for ETAs, in the free software world the only answer you will get is
"when it's ready".
> It
> would be a good idea to post a periodic libstdc++ progress report and calls
> for volunteers to implement some of the stuff. I think that might attract
> more developers to fixing up and finishing implementing the standard C++
> library.
See http://sourceware.cygnus.com/libstdc++/
> An area where I may be able to help is with the standard valarray and its
> friends, once I get back a response regarding making the compiler eliminate
> temporaries and excess copies in argument passing and return.
Again, see above.
^ permalink raw reply [flat|nested] 264+ messages in thread
* Re: Bug in libm or libstdc++.
1999-02-25 22:25 ` Paul Derbyshire
[not found] ` < 3.0.6.32.19990226012513.008e5450@pop.globalserve.net >
@ 1999-02-28 22:53 ` Paul Derbyshire
1 sibling, 0 replies; 264+ messages in thread
From: Paul Derbyshire @ 1999-02-28 22:53 UTC (permalink / raw)
To: egcs
At 03:32 PM 2/24/99 PST, you wrote:
>You have already been informed that libstdc++ is not complete. Sorry.
The standard has been around in largely complete form for over a year, and
finalized for many months. I am curious as to what is the cause for all of
these omissions... I would love to help but I don't know the first thing
about implementing these mathematical functions.
In any case, to avoid any more unpleasant surprised I would like to see a
list of all the omissions in the current libstdc++ and other
non-conformances, and where possible ETAs for the missing components. It
would be a good idea to post a periodic libstdc++ progress report and calls
for volunteers to implement some of the stuff. I think that might attract
more developers to fixing up and finishing implementing the standard C++
library.
An area where I may be able to help is with the standard valarray and its
friends, once I get back a response regarding making the compiler eliminate
temporaries and excess copies in argument passing and return.
--
.*. "Clouds are not spheres, mountains are not cones, coastlines are not
-() < circles, and bark is not smooth, nor does lightning travel in a
`*' straight line." -------------------------------------------------
-- B. Mandelbrot | http://surf.to/pgd.net
_____________________ ____|________ Paul Derbyshire pderbysh@usa.net
Programmer & Humanist|ICQ: 10423848|
^ permalink raw reply [flat|nested] 264+ messages in thread
* Re: Bug in libm or libstdc++.
1999-02-24 15:34 ` Joe Buck
[not found] ` < 199902242332.PAA09334@atrus.synopsys.com >
@ 1999-02-28 22:53 ` Joe Buck
1 sibling, 0 replies; 264+ messages in thread
From: Joe Buck @ 1999-02-28 22:53 UTC (permalink / raw)
To: Paul Derbyshire; +Cc: egcs, egcs-bugs
[ no "long double" overloads of math functions ]
> Stroustrup 3rd Ed definitely informs me that long double overloads for
> these and other functions are supposed to be in either libm or libstdc++.
You have already been informed that libstdc++ is not complete. Sorry.
^ permalink raw reply [flat|nested] 264+ messages in thread
* Re: Bug in libm or libstdc++.
[not found] ` < 3.0.6.32.19990222090333.00847df0@pop.globalserve.net >
1999-02-24 15:34 ` Joe Buck
@ 1999-02-24 15:42 ` Bob McWhirter
[not found] ` < Pine.LNX.3.96.990224183714.7438r-100000@exeter.exeter.org >
1999-02-28 22:53 ` Bob McWhirter
1 sibling, 2 replies; 264+ messages in thread
From: Bob McWhirter @ 1999-02-24 15:42 UTC (permalink / raw)
To: egcs
On Mon, 22 Feb 1999, Paul Derbyshire wrote:
> C:\PGD\C++\omega\ofc>gcc ntst.cc -o ntst.exe -Wall -lm -lstdcxx
> c:/djgpp/tmp/cc5PNfut.o(.text+0x51):ntst.cc: undefined reference to
> `atan(long double)'
[ snip ]
> What the hell?
Is that -really- necessary? Pipe down, already.
> Stroustrup 3rd Ed definitely informs me that long double overloads for
> these and other functions are supposed to be in either libm or libstdc++.
Uhhh... if you're referring to page 660 (section 22.3)
it most certainly does not make any such guarantee with
regards to -long double- datatypes.
> Using egcs 1.1.1 and the libm and libstdc++ that came with it.
at least on my box (sparc solaris), libm is vendor provided.
gnu/include/g++/cmath -does- make reference to the math
functions that use long doubles for arguments, but I don't
think any library on my box actually supports them.
Possibly there for platforms that do? There for platforms
that typedef a long double to be the same as a double?
(nm'ing vendor's libm and stdc++ does not reveal math
functions taking long doubles, but possibly some other
lib I'm ignoring? I did find math functions take
complex objects as arguments though.)
-Bob
^ permalink raw reply [flat|nested] 264+ messages in thread
[parent not found: < Pine.LNX.3.96.990224183714.7438r-100000@exeter.exeter.org >]
* Re: Bug in libm or libstdc++.
[not found] ` < Pine.LNX.3.96.990224183714.7438r-100000@exeter.exeter.org >
@ 1999-02-25 22:20 ` Paul Derbyshire
[not found] ` <199902261635.LAA23787@wagner.Princeton.EDU>
` (2 more replies)
0 siblings, 3 replies; 264+ messages in thread
From: Paul Derbyshire @ 1999-02-25 22:20 UTC (permalink / raw)
To: egcs, djgpp
> Uhhh... if you're referring to page 660 (section 22.3)
> it most certainly does not make any such guarantee with
> regards to -long double- datatypes.
S22.3, page 661: "double atan (double) ..... In addition, <cmath> and
<math.h> supply these functions for float and long double arguments."
You're wrong, I'm right. Long double versions of atan and friends ARE
demanded by the standard. I would like to see them very soon so that I may
use them (the long double versions anyways) when I want that bit of extra
precision.......
> at least on my box (sparc solaris), libm is vendor provided.
Not on an IBM PC clone, where it comes with the DJGPP/Cygwin/whatever
development environment you install. I installed the DJGPP/EGCS development
environment and got a broken libm.
> gnu/include/g++/cmath -does- make reference to the math
> functions that use long doubles for arguments, but I don't
> think any library on my box actually supports them.
Then those libraries are broken and not conformant. I suggest you complain
to the vendor. You may also want to ask the bookstore where you got your
copy of Stroustrup for an exchange or a refund; I sure would have if my
copy had turned out to have pp. 661-662 torn out or missing.
Anyways, since these are function overloads in C++, I would expect the long
double and float versions to be in libstdc++, not libm. And libstdc++ comes
with gcc/egcs rather than being vendor supplied, on all platforms. If the
egcs libstdc++ is lacking long double overloads for atan and the like, then
this is a bug in egcs.
--
.*. "Clouds are not spheres, mountains are not cones, coastlines are not
-() < circles, and bark is not smooth, nor does lightning travel in a
`*' straight line." -------------------------------------------------
-- B. Mandelbrot | http://surf.to/pgd.net
_____________________ ____|________ Paul Derbyshire pderbysh@usa.net
Programmer & Humanist|ICQ: 10423848|
^ permalink raw reply [flat|nested] 264+ messages in thread
[parent not found: <199902261635.LAA23787@wagner.Princeton.EDU>]
* Re: Bug in libm or libstdc++.
[not found] ` <199902261635.LAA23787@wagner.Princeton.EDU>
@ 1999-02-27 19:08 ` Paul Derbyshire
1999-02-28 22:53 ` Paul Derbyshire
1999-03-01 8:30 ` Joern Rennecke
0 siblings, 2 replies; 264+ messages in thread
From: Paul Derbyshire @ 1999-02-27 19:08 UTC (permalink / raw)
To: egcs
At 11:35 AM 2/26/99 -0500, you wrote:
[Long double overloads of libm functions in libstdc++]
>Then ... implement them.
I may be mathematically inclined but I have none of the
numerical-computation background necessary to know how to implement these
things in an optimized way. Best I could probably do is a slowly converging
Taylor series for these things. You ened a volunteer with a bit more
knowledge in techniques of rapid numerical computation of trig functions.
--
.*. "Clouds are not spheres, mountains are not cones, coastlines are not
-() < circles, and bark is not smooth, nor does lightning travel in a
`*' straight line." -------------------------------------------------
-- B. Mandelbrot | http://surf.to/pgd.net
_____________________ ____|________ Paul Derbyshire pderbysh@usa.net
Programmer & Humanist|ICQ: 10423848|
^ permalink raw reply [flat|nested] 264+ messages in thread
* Re: Bug in libm or libstdc++.
1999-02-27 19:08 ` Paul Derbyshire
@ 1999-02-28 22:53 ` Paul Derbyshire
1999-03-01 8:30 ` Joern Rennecke
1 sibling, 0 replies; 264+ messages in thread
From: Paul Derbyshire @ 1999-02-28 22:53 UTC (permalink / raw)
To: egcs
At 11:35 AM 2/26/99 -0500, you wrote:
[Long double overloads of libm functions in libstdc++]
>Then ... implement them.
I may be mathematically inclined but I have none of the
numerical-computation background necessary to know how to implement these
things in an optimized way. Best I could probably do is a slowly converging
Taylor series for these things. You ened a volunteer with a bit more
knowledge in techniques of rapid numerical computation of trig functions.
--
.*. "Clouds are not spheres, mountains are not cones, coastlines are not
-() < circles, and bark is not smooth, nor does lightning travel in a
`*' straight line." -------------------------------------------------
-- B. Mandelbrot | http://surf.to/pgd.net
_____________________ ____|________ Paul Derbyshire pderbysh@usa.net
Programmer & Humanist|ICQ: 10423848|
^ permalink raw reply [flat|nested] 264+ messages in thread
* Re: Bug in libm or libstdc++.
1999-02-27 19:08 ` Paul Derbyshire
1999-02-28 22:53 ` Paul Derbyshire
@ 1999-03-01 8:30 ` Joern Rennecke
[not found] ` < 199903011630.QAA00110@phal.cygnus.co.uk >
1999-03-31 23:46 ` Joern Rennecke
1 sibling, 2 replies; 264+ messages in thread
From: Joern Rennecke @ 1999-03-01 8:30 UTC (permalink / raw)
To: Paul Derbyshire; +Cc: egcs
> I may be mathematically inclined but I have none of the
> numerical-computation background necessary to know how to implement these
> things in an optimized way. Best I could probably do is a slowly converging
> Taylor series for these things. You ened a volunteer with a bit more
> knowledge in techniques of rapid numerical computation of trig functions.
When you want to use a Polynom approximation, you should rather use a
Tschebyscheff polynom. Look it up in a mathematical enceclopedia.
If you just want to get something working, you can skip the proofs and go
straight for the recipes ;-)
I happen to have written sqrt functions when I worked on an XFmode /
TFmode fp-bit.c . ( The project got stuck for lack of priority. )
I'll send it to you in private email.
^ permalink raw reply [flat|nested] 264+ messages in thread
[parent not found: < 199903011630.QAA00110@phal.cygnus.co.uk >]
* Re: Bug in libm or libstdc++.
[not found] ` < 199903011630.QAA00110@phal.cygnus.co.uk >
@ 1999-03-02 8:04 ` Paul Derbyshire
[not found] ` < 3.0.6.32.19990302110405.00945870@pop.globalserve.net >
1999-03-31 23:46 ` Paul Derbyshire
0 siblings, 2 replies; 264+ messages in thread
From: Paul Derbyshire @ 1999-03-02 8:04 UTC (permalink / raw)
To: egcs
At 04:30 PM 3/1/99 +0000, you wrote:
>When you want to use a Polynom approximation, you should rather use a
>Tschebyscheff polynom.
Perhaps.
>Look it up in a mathematical enceclopedia.
Impossible, since I don't have the URL for any, and a Web search turned up
dry. (Again.)
Of course, printed, expensive ones are not a viable alternative, since I
have insufficient funds, no access to any vendor of such a product, and
moreover no information about how I would locate such a vendor given that I
did have the access and the three-figure amount of spare cash. Also, egcs
is a free software product run on an open development model, and so it is
not possible for them to require/expect a contributor to obtain expensive
items in order to contribute, without thereby violating their own charter.
>If you just want to get something working, you can skip the proofs and go
>straight for the recipes ;-)
Of course.
>I happen to have written sqrt functions when I worked on an XFmode /
>TFmode fp-bit.c . ( The project got stuck for lack of priority. )
>I'll send it to you in private email.
A sqrt can be implemented quickly with Newton's method, converging in
O(log_2 # binary digits in mantissa) starting from a suitable guess. This
is O(log n)... I doubt it can be bettered.
It's the trig, exponentials, and especially the logarithms that are the
nontrivial ones. :-)
--
.*. "Clouds are not spheres, mountains are not cones, coastlines are not
-() < circles, and bark is not smooth, nor does lightning travel in a
`*' straight line." -------------------------------------------------
-- B. Mandelbrot | http://surf.to/pgd.net
_____________________ ____|________ Paul Derbyshire pderbysh@usa.net
Programmer & Humanist|ICQ: 10423848|
^ permalink raw reply [flat|nested] 264+ messages in thread
[parent not found: < 3.0.6.32.19990302110405.00945870@pop.globalserve.net >]
* Re: Bug in libm or libstdc++.
[not found] ` < 3.0.6.32.19990302110405.00945870@pop.globalserve.net >
@ 1999-03-02 8:38 ` Joern Rennecke
1999-03-31 23:46 ` Joern Rennecke
0 siblings, 1 reply; 264+ messages in thread
From: Joern Rennecke @ 1999-03-02 8:38 UTC (permalink / raw)
To: Paul Derbyshire; +Cc: egcs
> Impossible, since I don't have the URL for any, and a Web search turned up
> dry. (Again.)
> Of course, printed, expensive ones are not a viable alternative, since I
> have insufficient funds, no access to any vendor of such a product, and
> moreover no information about how I would locate such a vendor given that I
> did have the access and the three-figure amount of spare cash. Also, egcs
> is a free software product run on an open development model, and so it is
> not possible for them to require/expect a contributor to obtain expensive
> items in order to contribute, without thereby violating their own charter.
Oh, I bought one for a sum that, expresed in US dollars, would be one-figure.
But never mind, you can go to one of these old-fashioned places called
'public libraries' or 'university libraries'.
> A sqrt can be implemented quickly with Newton's method, converging in
> O(log_2 # binary digits in mantissa) starting from a suitable guess. This
> is O(log n)... I doubt it can be bettered.
You have to keep in mind that multiplication itself is O(n^1.6). Moreover,
XFmode and TFmode can be expressed in a small number of 32 / 64 bit values,
so you have a lot of discretization noise in the actual precision - runtime
function. And sqrt is supposed to be rounded EXACTLY for IEEE, i.e. for
round to nearest, you should return that floating point value that most
accurately describes the actual square root.
> It's the trig, exponentials, and especially the logarithms that are the
> nontrivial ones. :-)
For these functions, the rounding requirements ar a lot more relaxed.
^ permalink raw reply [flat|nested] 264+ messages in thread
* Re: Bug in libm or libstdc++.
1999-03-02 8:38 ` Joern Rennecke
@ 1999-03-31 23:46 ` Joern Rennecke
0 siblings, 0 replies; 264+ messages in thread
From: Joern Rennecke @ 1999-03-31 23:46 UTC (permalink / raw)
To: Paul Derbyshire; +Cc: egcs
> Impossible, since I don't have the URL for any, and a Web search turned up
> dry. (Again.)
> Of course, printed, expensive ones are not a viable alternative, since I
> have insufficient funds, no access to any vendor of such a product, and
> moreover no information about how I would locate such a vendor given that I
> did have the access and the three-figure amount of spare cash. Also, egcs
> is a free software product run on an open development model, and so it is
> not possible for them to require/expect a contributor to obtain expensive
> items in order to contribute, without thereby violating their own charter.
Oh, I bought one for a sum that, expresed in US dollars, would be one-figure.
But never mind, you can go to one of these old-fashioned places called
'public libraries' or 'university libraries'.
> A sqrt can be implemented quickly with Newton's method, converging in
> O(log_2 # binary digits in mantissa) starting from a suitable guess. This
> is O(log n)... I doubt it can be bettered.
You have to keep in mind that multiplication itself is O(n^1.6). Moreover,
XFmode and TFmode can be expressed in a small number of 32 / 64 bit values,
so you have a lot of discretization noise in the actual precision - runtime
function. And sqrt is supposed to be rounded EXACTLY for IEEE, i.e. for
round to nearest, you should return that floating point value that most
accurately describes the actual square root.
> It's the trig, exponentials, and especially the logarithms that are the
> nontrivial ones. :-)
For these functions, the rounding requirements ar a lot more relaxed.
^ permalink raw reply [flat|nested] 264+ messages in thread
* Re: Bug in libm or libstdc++.
1999-03-02 8:04 ` Paul Derbyshire
[not found] ` < 3.0.6.32.19990302110405.00945870@pop.globalserve.net >
@ 1999-03-31 23:46 ` Paul Derbyshire
1 sibling, 0 replies; 264+ messages in thread
From: Paul Derbyshire @ 1999-03-31 23:46 UTC (permalink / raw)
To: egcs
At 04:30 PM 3/1/99 +0000, you wrote:
>When you want to use a Polynom approximation, you should rather use a
>Tschebyscheff polynom.
Perhaps.
>Look it up in a mathematical enceclopedia.
Impossible, since I don't have the URL for any, and a Web search turned up
dry. (Again.)
Of course, printed, expensive ones are not a viable alternative, since I
have insufficient funds, no access to any vendor of such a product, and
moreover no information about how I would locate such a vendor given that I
did have the access and the three-figure amount of spare cash. Also, egcs
is a free software product run on an open development model, and so it is
not possible for them to require/expect a contributor to obtain expensive
items in order to contribute, without thereby violating their own charter.
>If you just want to get something working, you can skip the proofs and go
>straight for the recipes ;-)
Of course.
>I happen to have written sqrt functions when I worked on an XFmode /
>TFmode fp-bit.c . ( The project got stuck for lack of priority. )
>I'll send it to you in private email.
A sqrt can be implemented quickly with Newton's method, converging in
O(log_2 # binary digits in mantissa) starting from a suitable guess. This
is O(log n)... I doubt it can be bettered.
It's the trig, exponentials, and especially the logarithms that are the
nontrivial ones. :-)
--
.*. "Clouds are not spheres, mountains are not cones, coastlines are not
-() < circles, and bark is not smooth, nor does lightning travel in a
`*' straight line." -------------------------------------------------
-- B. Mandelbrot | http://surf.to/pgd.net
_____________________ ____|________ Paul Derbyshire pderbysh@usa.net
Programmer & Humanist|ICQ: 10423848|
^ permalink raw reply [flat|nested] 264+ messages in thread
* Re: Bug in libm or libstdc++.
1999-03-01 8:30 ` Joern Rennecke
[not found] ` < 199903011630.QAA00110@phal.cygnus.co.uk >
@ 1999-03-31 23:46 ` Joern Rennecke
1 sibling, 0 replies; 264+ messages in thread
From: Joern Rennecke @ 1999-03-31 23:46 UTC (permalink / raw)
To: Paul Derbyshire; +Cc: egcs
> I may be mathematically inclined but I have none of the
> numerical-computation background necessary to know how to implement these
> things in an optimized way. Best I could probably do is a slowly converging
> Taylor series for these things. You ened a volunteer with a bit more
> knowledge in techniques of rapid numerical computation of trig functions.
When you want to use a Polynom approximation, you should rather use a
Tschebyscheff polynom. Look it up in a mathematical enceclopedia.
If you just want to get something working, you can skip the proofs and go
straight for the recipes ;-)
I happen to have written sqrt functions when I worked on an XFmode /
TFmode fp-bit.c . ( The project got stuck for lack of priority. )
I'll send it to you in private email.
^ permalink raw reply [flat|nested] 264+ messages in thread
[parent not found: <Pine.SUN.3.91.990228142826.5950V-100000@is>]
* Re: Bug in libm or libstdc++.
[not found] ` <Pine.SUN.3.91.990228142826.5950V-100000@is>
@ 1999-02-28 4:57 ` Paul Derbyshire
1999-02-28 22:53 ` Paul Derbyshire
0 siblings, 1 reply; 264+ messages in thread
From: Paul Derbyshire @ 1999-02-28 4:57 UTC (permalink / raw)
To: egcs, djgpp
At 02:28 PM 2/28/99 +0200, you wrote:
>
>On Fri, 26 Feb 1999, Paul Derbyshire wrote:
>
>> You're wrong, I'm right. Long double versions of atan and friends ARE
>> demanded by the standard.
>Which standard is that?
The ISO C++ standard. The C++ compiling environment is what was under
discussion.
>libm.a which comes with DJGPP v2.02 is not a C++
>library, it's a C library, and AFAIK it conforms to current C
>standards.
Then it must be libstdc++ that is supposed to overload those functions for
floats and long doubles. As the subject says, the bug was in one of those
libraries, and your clarification has narrowed it down to libstdc++.
--
.*. "Clouds are not spheres, mountains are not cones, coastlines are not
-() < circles, and bark is not smooth, nor does lightning travel in a
`*' straight line." -------------------------------------------------
-- B. Mandelbrot | http://surf.to/pgd.net
_____________________ ____|________ Paul Derbyshire pderbysh@usa.net
Programmer & Humanist|ICQ: 10423848|
^ permalink raw reply [flat|nested] 264+ messages in thread
* Re: Bug in libm or libstdc++.
1999-02-28 4:57 ` Paul Derbyshire
@ 1999-02-28 22:53 ` Paul Derbyshire
0 siblings, 0 replies; 264+ messages in thread
From: Paul Derbyshire @ 1999-02-28 22:53 UTC (permalink / raw)
To: egcs, djgpp
At 02:28 PM 2/28/99 +0200, you wrote:
>
>On Fri, 26 Feb 1999, Paul Derbyshire wrote:
>
>> You're wrong, I'm right. Long double versions of atan and friends ARE
>> demanded by the standard.
>Which standard is that?
The ISO C++ standard. The C++ compiling environment is what was under
discussion.
>libm.a which comes with DJGPP v2.02 is not a C++
>library, it's a C library, and AFAIK it conforms to current C
>standards.
Then it must be libstdc++ that is supposed to overload those functions for
floats and long doubles. As the subject says, the bug was in one of those
libraries, and your clarification has narrowed it down to libstdc++.
--
.*. "Clouds are not spheres, mountains are not cones, coastlines are not
-() < circles, and bark is not smooth, nor does lightning travel in a
`*' straight line." -------------------------------------------------
-- B. Mandelbrot | http://surf.to/pgd.net
_____________________ ____|________ Paul Derbyshire pderbysh@usa.net
Programmer & Humanist|ICQ: 10423848|
^ permalink raw reply [flat|nested] 264+ messages in thread
* Re: Bug in libm or libstdc++.
1999-02-25 22:20 ` Paul Derbyshire
[not found] ` <199902261635.LAA23787@wagner.Princeton.EDU>
[not found] ` <Pine.SUN.3.91.990228142826.5950V-100000@is>
@ 1999-02-28 22:53 ` Paul Derbyshire
2 siblings, 0 replies; 264+ messages in thread
From: Paul Derbyshire @ 1999-02-28 22:53 UTC (permalink / raw)
To: egcs, djgpp
> Uhhh... if you're referring to page 660 (section 22.3)
> it most certainly does not make any such guarantee with
> regards to -long double- datatypes.
S22.3, page 661: "double atan (double) ..... In addition, <cmath> and
<math.h> supply these functions for float and long double arguments."
You're wrong, I'm right. Long double versions of atan and friends ARE
demanded by the standard. I would like to see them very soon so that I may
use them (the long double versions anyways) when I want that bit of extra
precision.......
> at least on my box (sparc solaris), libm is vendor provided.
Not on an IBM PC clone, where it comes with the DJGPP/Cygwin/whatever
development environment you install. I installed the DJGPP/EGCS development
environment and got a broken libm.
> gnu/include/g++/cmath -does- make reference to the math
> functions that use long doubles for arguments, but I don't
> think any library on my box actually supports them.
Then those libraries are broken and not conformant. I suggest you complain
to the vendor. You may also want to ask the bookstore where you got your
copy of Stroustrup for an exchange or a refund; I sure would have if my
copy had turned out to have pp. 661-662 torn out or missing.
Anyways, since these are function overloads in C++, I would expect the long
double and float versions to be in libstdc++, not libm. And libstdc++ comes
with gcc/egcs rather than being vendor supplied, on all platforms. If the
egcs libstdc++ is lacking long double overloads for atan and the like, then
this is a bug in egcs.
--
.*. "Clouds are not spheres, mountains are not cones, coastlines are not
-() < circles, and bark is not smooth, nor does lightning travel in a
`*' straight line." -------------------------------------------------
-- B. Mandelbrot | http://surf.to/pgd.net
_____________________ ____|________ Paul Derbyshire pderbysh@usa.net
Programmer & Humanist|ICQ: 10423848|
^ permalink raw reply [flat|nested] 264+ messages in thread
* Re: Bug in libm or libstdc++.
1999-02-24 15:42 ` Bob McWhirter
[not found] ` < Pine.LNX.3.96.990224183714.7438r-100000@exeter.exeter.org >
@ 1999-02-28 22:53 ` Bob McWhirter
1 sibling, 0 replies; 264+ messages in thread
From: Bob McWhirter @ 1999-02-28 22:53 UTC (permalink / raw)
To: egcs
On Mon, 22 Feb 1999, Paul Derbyshire wrote:
> C:\PGD\C++\omega\ofc>gcc ntst.cc -o ntst.exe -Wall -lm -lstdcxx
> c:/djgpp/tmp/cc5PNfut.o(.text+0x51):ntst.cc: undefined reference to
> `atan(long double)'
[ snip ]
> What the hell?
Is that -really- necessary? Pipe down, already.
> Stroustrup 3rd Ed definitely informs me that long double overloads for
> these and other functions are supposed to be in either libm or libstdc++.
Uhhh... if you're referring to page 660 (section 22.3)
it most certainly does not make any such guarantee with
regards to -long double- datatypes.
> Using egcs 1.1.1 and the libm and libstdc++ that came with it.
at least on my box (sparc solaris), libm is vendor provided.
gnu/include/g++/cmath -does- make reference to the math
functions that use long doubles for arguments, but I don't
think any library on my box actually supports them.
Possibly there for platforms that do? There for platforms
that typedef a long double to be the same as a double?
(nm'ing vendor's libm and stdc++ does not reveal math
functions taking long doubles, but possibly some other
lib I'm ignoring? I did find math functions take
complex objects as arguments though.)
-Bob
^ permalink raw reply [flat|nested] 264+ messages in thread
* Bug in libm or libstdc++.
1999-02-24 15:13 Bug in libm or libstdc++ Paul Derbyshire
[not found] ` < 3.0.6.32.19990222090333.00847df0@pop.globalserve.net >
@ 1999-02-28 22:53 ` Paul Derbyshire
1 sibling, 0 replies; 264+ messages in thread
From: Paul Derbyshire @ 1999-02-28 22:53 UTC (permalink / raw)
To: egcs, egcs-bugs
C:\PGD\C++\omega\ofc>gcc ntst.cc -o ntst.exe -Wall -lm -lstdcxx
c:/djgpp/tmp/cc5PNfut.o(.text+0x51):ntst.cc: undefined reference to
`atan(long double)'
c:/djgpp/tmp/cc5PNfut.o(.text+0xa8):ntst.cc: undefined reference to
`exp(long double)'
c:/djgpp/tmp/cc5PNfut.o(.text+0xef):ntst.cc: undefined reference to
`log(long double)'
c:/djgpp/tmp/cc5PNfut.o(.text+0x136):ntst.cc: undefined reference to
`log(long double)'
c:/djgpp/tmp/cc5PNfut.o(.text+0x17d):ntst.cc: undefined reference to
`sqrt(long double)'
What the hell?
Stroustrup 3rd Ed definitely informs me that long double overloads for
these and other functions are supposed to be in either libm or libstdc++.
Using egcs 1.1.1 and the libm and libstdc++ that came with it.
--
.*. "Clouds are not spheres, mountains are not cones, coastlines are not
-() < circles, and bark is not smooth, nor does lightning travel in a
`*' straight line." -------------------------------------------------
-- B. Mandelbrot | http://surf.to/pgd.net
_____________________ ____|________ Paul Derbyshire pderbysh@usa.net
Programmer & Humanist|ICQ: 10423848|
^ permalink raw reply [flat|nested] 264+ messages in thread
* [Meta] Enough of the "egcs.cygnus.com" already!
@ 1999-01-31 22:09 Paul Derbyshire
1999-01-31 22:14 ` CaT
` (4 more replies)
0 siblings, 5 replies; 264+ messages in thread
From: Paul Derbyshire @ 1999-01-31 22:09 UTC (permalink / raw)
To: egcs
Grr. I subscribe to the EGCS mailing list at egcs.cygnus.com and set a mail
filter to filter anything with a To: or Cc: containing
"egcs@egcs.cygnus.com" into an 'egcs' folder, figuring that it isn't likely
that anyone would BCc: to the list and confound the filter.
Trouble is, it seems you can post to the list using just "egcs@cygnus.com",
since I keep finding a shitload of egcs mail in my main Inbox with this on
the Cc: line!
Argh.
--
.*. "Clouds are not spheres, mountains are not cones, coastlines are not
-() < circles, and bark is not smooth, nor does lightning travel in a
`*' straight line." -------------------------------------------------
-- B. Mandelbrot | http://surf.to/pgd.net
_____________________ ____|________ Paul Derbyshire pderbysh@usa.net
Programmer & Humanist|ICQ: 10423848|
^ permalink raw reply [flat|nested] 264+ messages in thread
* Re: [Meta] Enough of the "egcs.cygnus.com" already!
1999-01-31 22:09 [Meta] Enough of the "egcs.cygnus.com" already! Paul Derbyshire
@ 1999-01-31 22:14 ` CaT
1999-01-31 22:24 ` Bob McWhirter
1999-01-31 23:12 ` Ken Raeburn
` (3 subsequent siblings)
4 siblings, 1 reply; 264+ messages in thread
From: CaT @ 1999-01-31 22:14 UTC (permalink / raw)
To: Paul Derbyshire; +Cc: egcs
Paul Derbyshire wrote the following:
>
> Grr. I subscribe to the EGCS mailing list at egcs.cygnus.com and set a mail
> filter to filter anything with a To: or Cc: containing
> "egcs@egcs.cygnus.com" into an 'egcs' folder, figuring that it isn't likely
> that anyone would BCc: to the list and confound the filter.
>
> Trouble is, it seems you can post to the list using just "egcs@cygnus.com",
> since I keep finding a shitload of egcs mail in my main Inbox with this on
> the Cc: line!
I filter on the From_ line like this:
/^From (egcs(-|-testresults-|-announce-)return-[0-9]+-cat\=zip\.com\.au\@egcs\.cygnus\.com|owner-egcs-bugs\@cygnus\.com)/
That catches all the egcs mail for me just fine (it's from a list perl script
I've written to postprocess my mailbox. don't ask why. :).
--
CaT (cat@zip.net.au) URL: http://www.zip.com.au/dev/null
There was farting in the air that night,
It lit so bright,
Fernando...
^ permalink raw reply [flat|nested] 264+ messages in thread
* Re: [Meta] Enough of the "egcs.cygnus.com" already!
1999-01-31 22:14 ` CaT
@ 1999-01-31 22:24 ` Bob McWhirter
1999-01-31 22:50 ` Paul Derbyshire
0 siblings, 1 reply; 264+ messages in thread
From: Bob McWhirter @ 1999-01-31 22:24 UTC (permalink / raw)
To: CaT; +Cc: Paul Derbyshire, egcs
> > Trouble is, it seems you can post to the list using just "egcs@cygnus.com",
> > since I keep finding a shitload of egcs mail in my main Inbox with this on
> > the Cc: line!
>
> I filter on the From_ line like this:
>
> /^From (egcs(-|-testresults-|-announce-)return-[0-9]+-cat\=zip\.com\.au\@egcs\.cygnus\.com|owner-egcs-bugs\@cygnus\.com)/
Pardon the 'me too!', but I've found this regexp (from .procmailrc)
to work rather well:
^Sender:.*owner-egcs
It's short, and seems to work regardless of the address used to
send to the list itself.
-Bob
^ permalink raw reply [flat|nested] 264+ messages in thread
* Re: [Meta] Enough of the "egcs.cygnus.com" already!
1999-01-31 22:24 ` Bob McWhirter
@ 1999-01-31 22:50 ` Paul Derbyshire
1999-02-01 2:01 ` Franz Sirl
0 siblings, 1 reply; 264+ messages in thread
From: Paul Derbyshire @ 1999-01-31 22:50 UTC (permalink / raw)
To: egcs
>Pardon the 'me too!', but I've found this regexp (from .procmailrc)
>to work rather well:
>
> ^Sender:.*owner-egcs
Mine doesn't come with a Sender: header...there's an X-Sender: header but
it's the message originator again and not owner-egcs.
--
.*. "Clouds are not spheres, mountains are not cones, coastlines are not
-() < circles, and bark is not smooth, nor does lightning travel in a
`*' straight line." -------------------------------------------------
-- B. Mandelbrot | http://surf.to/pgd.net
_____________________ ____|________ Paul Derbyshire pderbysh@usa.net
Programmer & Humanist|ICQ: 10423848|
^ permalink raw reply [flat|nested] 264+ messages in thread
* Re: [Meta] Enough of the "egcs.cygnus.com" already!
1999-01-31 22:50 ` Paul Derbyshire
@ 1999-02-01 2:01 ` Franz Sirl
[not found] ` < 4.1.19990201105045.054320e0@mail.lauterbach.com >
1999-02-28 22:53 ` Franz Sirl
0 siblings, 2 replies; 264+ messages in thread
From: Franz Sirl @ 1999-02-01 2:01 UTC (permalink / raw)
To: Paul Derbyshire; +Cc: egcs
At 07:50 01.02.99 , Paul Derbyshire wrote:
>>Pardon the 'me too!', but I've found this regexp (from .procmailrc)
>>to work rather well:
>>
>> ^Sender:.*owner-egcs
>
>Mine doesn't come with a Sender: header...there's an X-Sender: header but
>it's the message originator again and not owner-egcs.
Sure it has a Sender: header. Just enable the "BlahBlah" button of the
message in Eudora and you will see it.
So you can either filter on:
"Sender:" contains "owner-egcs"
or
"Delivered-To:" contains "egcs@egcs.cygnus.com"
in Eudora. You'll see that neither one one of these headers is
preconfigured in Eudora's header popup list, but you can simply overtype
one of the preconfigured headers.
Franz.
^ permalink raw reply [flat|nested] 264+ messages in thread
[parent not found: < 4.1.19990201105045.054320e0@mail.lauterbach.com >]
* Re: [Meta] Enough of the "egcs.cygnus.com" already!
[not found] ` < 4.1.19990201105045.054320e0@mail.lauterbach.com >
@ 1999-02-01 15:53 ` Paul Derbyshire
1999-02-28 22:53 ` Rask Ingemann Lambertsen
1999-02-28 22:53 ` Paul Derbyshire
0 siblings, 2 replies; 264+ messages in thread
From: Paul Derbyshire @ 1999-02-01 15:53 UTC (permalink / raw)
To: egcs
At 11:00 AM 2/1/99 +0100, you wrote:
>Sure it has a Sender: header. Just enable the "BlahBlah" button of the
>message in Eudora and you will see it.
I know about that button, dammit, and trust me it's not there. Neither is
the "From " header. I looked for both of those in the very message I'm
replying to, and saw neither. Tehre was an X-Sender: but there was no
mention of owner-egcs in it.
--
.*. "Clouds are not spheres, mountains are not cones, coastlines are not
-() < circles, and bark is not smooth, nor does lightning travel in a
`*' straight line." -------------------------------------------------
-- B. Mandelbrot | http://surf.to/pgd.net
_____________________ ____|________ Paul Derbyshire pderbysh@usa.net
Programmer & Humanist|ICQ: 10423848|
^ permalink raw reply [flat|nested] 264+ messages in thread
* Re: [Meta] Enough of the "egcs.cygnus.com" already!
1999-02-01 15:53 ` Paul Derbyshire
@ 1999-02-28 22:53 ` Rask Ingemann Lambertsen
1999-02-28 22:53 ` Paul Derbyshire
1 sibling, 0 replies; 264+ messages in thread
From: Rask Ingemann Lambertsen @ 1999-02-28 22:53 UTC (permalink / raw)
To: EGCS mailing list
[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain, Size: 1377 bytes --]
Den 02-Feb-99 00:52:33 skrev Paul Derbyshire følgende om "Re: [Meta] Enough of the "egcs.cygnus.com" already!":
> At 11:00 AM 2/1/99 +0100, you wrote:
>>Sure it has a Sender: header. Just enable the "BlahBlah" button of the
>>message in Eudora and you will see it.
> I know about that button, dammit, and trust me it's not there. Neither is
> the "From " header. I looked for both of those in the very message I'm
> replying to, and saw neither. Tehre was an X-Sender: but there was no
> mention of owner-egcs in it.
IIRC, RFC1123 requires Internet mail systems to preserve the envelope
sender address. This is what the "From " header is normally used for. Perhaps
there is a Return-Path: header instead?
Btw, my copies of the messages all have the Sender: header.
Regards,
/¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯T¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯\
| Rask Ingemann Lambertsen | E-mail: mailto:rask@kampsax.k-net.dk |
| Registered Phase5 developer | WWW: http://www.gbar.dtu.dk/~c948374/ |
| A4000, 775 kkeys/s (RC5-64) | "ThrustMe" on XPilot, ARCnet and IRC |
|To err is human. To forgive is beyond the scope of the Operating System.|
^ permalink raw reply [flat|nested] 264+ messages in thread
* Re: [Meta] Enough of the "egcs.cygnus.com" already!
1999-02-01 15:53 ` Paul Derbyshire
1999-02-28 22:53 ` Rask Ingemann Lambertsen
@ 1999-02-28 22:53 ` Paul Derbyshire
1 sibling, 0 replies; 264+ messages in thread
From: Paul Derbyshire @ 1999-02-28 22:53 UTC (permalink / raw)
To: egcs
At 11:00 AM 2/1/99 +0100, you wrote:
>Sure it has a Sender: header. Just enable the "BlahBlah" button of the
>message in Eudora and you will see it.
I know about that button, dammit, and trust me it's not there. Neither is
the "From " header. I looked for both of those in the very message I'm
replying to, and saw neither. Tehre was an X-Sender: but there was no
mention of owner-egcs in it.
--
.*. "Clouds are not spheres, mountains are not cones, coastlines are not
-() < circles, and bark is not smooth, nor does lightning travel in a
`*' straight line." -------------------------------------------------
-- B. Mandelbrot | http://surf.to/pgd.net
_____________________ ____|________ Paul Derbyshire pderbysh@usa.net
Programmer & Humanist|ICQ: 10423848|
^ permalink raw reply [flat|nested] 264+ messages in thread
* Re: [Meta] Enough of the "egcs.cygnus.com" already!
1999-02-01 2:01 ` Franz Sirl
[not found] ` < 4.1.19990201105045.054320e0@mail.lauterbach.com >
@ 1999-02-28 22:53 ` Franz Sirl
1 sibling, 0 replies; 264+ messages in thread
From: Franz Sirl @ 1999-02-28 22:53 UTC (permalink / raw)
To: Paul Derbyshire; +Cc: egcs
At 07:50 01.02.99 , Paul Derbyshire wrote:
>>Pardon the 'me too!', but I've found this regexp (from .procmailrc)
>>to work rather well:
>>
>> ^Sender:.*owner-egcs
>
>Mine doesn't come with a Sender: header...there's an X-Sender: header but
>it's the message originator again and not owner-egcs.
Sure it has a Sender: header. Just enable the "BlahBlah" button of the
message in Eudora and you will see it.
So you can either filter on:
"Sender:" contains "owner-egcs"
or
"Delivered-To:" contains "egcs@egcs.cygnus.com"
in Eudora. You'll see that neither one one of these headers is
preconfigured in Eudora's header popup list, but you can simply overtype
one of the preconfigured headers.
Franz.
^ permalink raw reply [flat|nested] 264+ messages in thread
* Re: [Meta] Enough of the "egcs.cygnus.com" already!
1999-01-31 22:09 [Meta] Enough of the "egcs.cygnus.com" already! Paul Derbyshire
1999-01-31 22:14 ` CaT
@ 1999-01-31 23:12 ` Ken Raeburn
1999-02-01 7:13 ` Jeffrey A Law
` (2 subsequent siblings)
4 siblings, 0 replies; 264+ messages in thread
From: Ken Raeburn @ 1999-01-31 23:12 UTC (permalink / raw)
To: Paul Derbyshire; +Cc: egcs
Paul Derbyshire <pderbysh@usa.net> writes:
> Trouble is, it seems you can post to the list using just "egcs@cygnus.com",
It's not unheard of for a site to have a local alias that points to a
remote mailing list, especially if, say, a news/mail gateway is
situated at that machine (so that "posts" may automatically be routed
by email to that machine, where some spam filter might be installed),
or the machine used to host the list before it moved (so that people
may have the old address saved away somewhere, and old versions of the
software may refer to it in documentation). The latter is the case
here.
Getting annoyed at such sites isn't going to do you much good. Find
some way to match on the alternate addresses; they're usually few in
number.
Me, I look for something like
egcs@[-a-zA-Z0-9.]*cygnus.com
in the to or cc lines. (The long list of characters is to avoid
matching whitespace and thus span multiple addresses.) But I see the
incoming mail headers (at my site) currently also have:
Mailing-List: contact egcs-help@egcs.cygnus.com; run by ezmlm
Sender: owner-egcs@egcs.cygnus.com
Delivered-To: mailing list egcs@egcs.cygnus.com
that you could look for.
And the envelope-sender address (also known as a "From " header --
that's "from" with a trailing space and *NO* colon -- in the
UNIX/sendmail world) also indicates that it's from the egcs list, but
I don't know if your mailer will make that info available to you.
Ken
^ permalink raw reply [flat|nested] 264+ messages in thread
* Re: [Meta] Enough of the "egcs.cygnus.com" already!
1999-01-31 22:09 [Meta] Enough of the "egcs.cygnus.com" already! Paul Derbyshire
1999-01-31 22:14 ` CaT
1999-01-31 23:12 ` Ken Raeburn
@ 1999-02-01 7:13 ` Jeffrey A Law
1999-02-01 7:27 ` Alexandre Oliva
1999-02-28 22:53 ` Jeffrey A Law
[not found] ` <19990201200631.A227@tardis.ed.ac.uk>
1999-02-03 12:05 ` Rask Ingemann Lambertsen
4 siblings, 2 replies; 264+ messages in thread
From: Jeffrey A Law @ 1999-02-01 7:13 UTC (permalink / raw)
To: Paul Derbyshire; +Cc: egcs
In message <3.0.6.32.19990201010831.00880950@pop.netaddress.com>you write:
> Grr. I subscribe to the EGCS mailing list at egcs.cygnus.com and set a mail
> filter to filter anything with a To: or Cc: containing
> "egcs@egcs.cygnus.com" into an 'egcs' folder, figuring that it isn't likely
> that anyone would BCc: to the list and confound the filter.
>
> Trouble is, it seems you can post to the list using just "egcs@cygnus.com",
> since I keep finding a shitload of egcs mail in my main Inbox with this on
> the Cc: line!
The @cygnus.com relays are scheduled to go away on or around March 1, 1999.
jeff
^ permalink raw reply [flat|nested] 264+ messages in thread
* Re: [Meta] Enough of the "egcs.cygnus.com" already!
1999-02-01 7:13 ` Jeffrey A Law
@ 1999-02-01 7:27 ` Alexandre Oliva
[not found] ` < or4sp6b12f.fsf@araguaia.dcc.unicamp.br >
1999-02-28 22:53 ` Alexandre Oliva
1999-02-28 22:53 ` Jeffrey A Law
1 sibling, 2 replies; 264+ messages in thread
From: Alexandre Oliva @ 1999-02-01 7:27 UTC (permalink / raw)
To: law; +Cc: Paul Derbyshire, egcs
On Feb 1, 1999, Jeffrey A Law <law@upchuck.cygnus.com> wrote:
> The @cygnus.com relays are scheduled to go away on or around March 1, 1999.
What about the following error message, printed by egcs 1.1.1?
bug.c:3: Please submit a full bug report to `egcs-bugs@cygnus.com'.
--
Alexandre Oliva http://www.dcc.unicamp.br/~oliva aoliva@{acm.org}
oliva@{dcc.unicamp.br,gnu.org,egcs.cygnus.com,samba.org}
Universidade Estadual de Campinas, SP, Brasil
^ permalink raw reply [flat|nested] 264+ messages in thread
[parent not found: < or4sp6b12f.fsf@araguaia.dcc.unicamp.br >]
* Re: [Meta] Enough of the "egcs.cygnus.com" already!
[not found] ` < or4sp6b12f.fsf@araguaia.dcc.unicamp.br >
@ 1999-02-01 7:30 ` Jeffrey A Law
1999-02-01 7:35 ` Alexandre Oliva
` (2 more replies)
1999-02-13 10:47 ` Jeffrey A Law
1 sibling, 3 replies; 264+ messages in thread
From: Jeffrey A Law @ 1999-02-01 7:30 UTC (permalink / raw)
To: Alexandre Oliva; +Cc: Paul Derbyshire, egcs
In message < or4sp6b12f.fsf@araguaia.dcc.unicamp.br >you write:
> On Feb 1, 1999, Jeffrey A Law <law@upchuck.cygnus.com> wrote:
>
> > The @cygnus.com relays are scheduled to go away on or around March 1, 199
> 9.
>
> What about the following error message, printed by egcs 1.1.1?
>
> bug.c:3: Please submit a full bug report to `egcs-bugs@cygnus.com'.
Easily fixed ;-)
jeff
^ permalink raw reply [flat|nested] 264+ messages in thread
* Re: [Meta] Enough of the "egcs.cygnus.com" already!
1999-02-01 7:30 ` Jeffrey A Law
@ 1999-02-01 7:35 ` Alexandre Oliva
[not found] ` < or1zkab0ou.fsf@araguaia.dcc.unicamp.br >
1999-02-28 22:53 ` Alexandre Oliva
1999-02-01 7:59 ` Ken Raeburn
1999-02-28 22:53 ` Jeffrey A Law
2 siblings, 2 replies; 264+ messages in thread
From: Alexandre Oliva @ 1999-02-01 7:35 UTC (permalink / raw)
To: law; +Cc: Paul Derbyshire, egcs
On Feb 1, 1999, Jeffrey A Law <law@hurl.cygnus.com> wrote:
> In message < or4sp6b12f.fsf@araguaia.dcc.unicamp.br >you write:
>> On Feb 1, 1999, Jeffrey A Law <law@upchuck.cygnus.com> wrote:
>> > The @cygnus.com relays are scheduled to go away on or around March 1, 199
>> 9.
>> What about the following error message, printed by egcs 1.1.1?
>> bug.c:3: Please submit a full bug report to `egcs-bugs@cygnus.com'.
> Easily fixed ;-)
No, I mean, we must keep at least egcs-bugs@cygnus.com as a valid
address, otherwise people that don't know about the change won't be
able to submit bug reports against egcs 1.1.1, that will probably
still be floating around for a long time :-(
Either the relay or an automatic reply saying ``the new e-mail address
for reporting egcs bugs is egcs-bugs@egcs.cygnus.com, please submit
your report again, sorry for the inconvenience''.
--
Alexandre Oliva http://www.dcc.unicamp.br/~oliva aoliva@{acm.org}
oliva@{dcc.unicamp.br,gnu.org,egcs.cygnus.com,samba.org}
Universidade Estadual de Campinas, SP, Brasil
^ permalink raw reply [flat|nested] 264+ messages in thread
[parent not found: < or1zkab0ou.fsf@araguaia.dcc.unicamp.br >]
* Re: [Meta] Enough of the "egcs.cygnus.com" already!
[not found] ` < or1zkab0ou.fsf@araguaia.dcc.unicamp.br >
@ 1999-02-01 7:50 ` Jeffrey A Law
[not found] ` < 3391.917883892@hurl.cygnus.com >
1999-02-28 22:53 ` Jeffrey A Law
1999-02-01 15:58 ` Paul Derbyshire
1 sibling, 2 replies; 264+ messages in thread
From: Jeffrey A Law @ 1999-02-01 7:50 UTC (permalink / raw)
To: Alexandre Oliva; +Cc: Paul Derbyshire, egcs
In message < or1zkab0ou.fsf@araguaia.dcc.unicamp.br >you write:
> No, I mean, we must keep at least egcs-bugs@cygnus.com as a valid
> address, otherwise people that don't know about the change won't be
> able to submit bug reports against egcs 1.1.1, that will probably
> still be floating around for a long time :-(
>
> Either the relay or an automatic reply saying ``the new e-mail address
> for reporting egcs bugs is egcs-bugs@egcs.cygnus.com, please submit
> your report again, sorry for the inconvenience''.
We'll probably have an auto-reply for all the old addresses.
And we'll be changing the address in that message RSN.
jeff
^ permalink raw reply [flat|nested] 264+ messages in thread
[parent not found: < 3391.917883892@hurl.cygnus.com >]
* Re: [Meta] Enough of the "egcs.cygnus.com" already!
[not found] ` < 3391.917883892@hurl.cygnus.com >
@ 1999-02-01 8:23 ` Joe Buck
[not found] ` < 199902011621.IAA00385@atrus.synopsys.com >
` (2 more replies)
0 siblings, 3 replies; 264+ messages in thread
From: Joe Buck @ 1999-02-01 8:23 UTC (permalink / raw)
To: law; +Cc: oliva, pderbysh, egcs
> > Either the relay or an automatic reply saying ``the new e-mail address
> > for reporting egcs bugs is egcs-bugs@egcs.cygnus.com, please submit
> > your report again, sorry for the inconvenience''.
> We'll probably have an auto-reply for all the old addresses.
Which won't reach the people who spam-protect their email address
when mailing to large mailing lists (or just out of habit).
We probably should archive the old messages at least for some transition
period.
^ permalink raw reply [flat|nested] 264+ messages in thread
[parent not found: < 199902011621.IAA00385@atrus.synopsys.com >]
* Re: [Meta] Enough of the "egcs.cygnus.com" already!
[not found] ` < 199902011621.IAA00385@atrus.synopsys.com >
@ 1999-02-01 8:24 ` Jeffrey A Law
1999-02-28 22:53 ` Jeffrey A Law
1999-02-01 16:03 ` Paul Derbyshire
1 sibling, 1 reply; 264+ messages in thread
From: Jeffrey A Law @ 1999-02-01 8:24 UTC (permalink / raw)
To: Joe Buck; +Cc: oliva, pderbysh, egcs
In message < 199902011621.IAA00385@atrus.synopsys.com >you write:
>
> > > Either the relay or an automatic reply saying ``the new e-mail addres
> s
> > > for reporting egcs bugs is egcs-bugs@egcs.cygnus.com, please submit
> > > your report again, sorry for the inconvenience''.
> > We'll probably have an auto-reply for all the old addresses.
>
> Which won't reach the people who spam-protect their email address
> when mailing to large mailing lists (or just out of habit).
Yea, but we don't care about them. I'll mean someone (sysadmin) will get a
lost of bounced messages, but that's someone else's problem :-)
> We probably should archive the old messages at least for some transition
> period.
We'll continue to have all the messages in archive form.
jeff
^ permalink raw reply [flat|nested] 264+ messages in thread
* Re: [Meta] Enough of the "egcs.cygnus.com" already!
1999-02-01 8:24 ` Jeffrey A Law
@ 1999-02-28 22:53 ` Jeffrey A Law
0 siblings, 0 replies; 264+ messages in thread
From: Jeffrey A Law @ 1999-02-28 22:53 UTC (permalink / raw)
To: Joe Buck; +Cc: oliva, pderbysh, egcs
In message < 199902011621.IAA00385@atrus.synopsys.com >you write:
>
> > > Either the relay or an automatic reply saying ``the new e-mail addres
> s
> > > for reporting egcs bugs is egcs-bugs@egcs.cygnus.com, please submit
> > > your report again, sorry for the inconvenience''.
> > We'll probably have an auto-reply for all the old addresses.
>
> Which won't reach the people who spam-protect their email address
> when mailing to large mailing lists (or just out of habit).
Yea, but we don't care about them. I'll mean someone (sysadmin) will get a
lost of bounced messages, but that's someone else's problem :-)
> We probably should archive the old messages at least for some transition
> period.
We'll continue to have all the messages in archive form.
jeff
^ permalink raw reply [flat|nested] 264+ messages in thread
* Re: [Meta] Enough of the "egcs.cygnus.com" already!
[not found] ` < 199902011621.IAA00385@atrus.synopsys.com >
1999-02-01 8:24 ` Jeffrey A Law
@ 1999-02-01 16:03 ` Paul Derbyshire
1999-02-28 22:53 ` Paul Derbyshire
1 sibling, 1 reply; 264+ messages in thread
From: Paul Derbyshire @ 1999-02-01 16:03 UTC (permalink / raw)
To: egcs
>Which won't reach the people who spam-protect their email address
>when mailing to large mailing lists (or just out of habit).
If you munge your reply-to when sending to mailing lists you deserve what
you get -- or fail to get. Any decent mailing list will kick off anyone who
posts spam to the list or is suspected of harvesting on it.
--
.*. "Clouds are not spheres, mountains are not cones, coastlines are not
-() < circles, and bark is not smooth, nor does lightning travel in a
`*' straight line." -------------------------------------------------
-- B. Mandelbrot | http://surf.to/pgd.net
_____________________ ____|________ Paul Derbyshire pderbysh@usa.net
Programmer & Humanist|ICQ: 10423848|
^ permalink raw reply [flat|nested] 264+ messages in thread
* Re: [Meta] Enough of the "egcs.cygnus.com" already!
1999-02-01 16:03 ` Paul Derbyshire
@ 1999-02-28 22:53 ` Paul Derbyshire
0 siblings, 0 replies; 264+ messages in thread
From: Paul Derbyshire @ 1999-02-28 22:53 UTC (permalink / raw)
To: egcs
>Which won't reach the people who spam-protect their email address
>when mailing to large mailing lists (or just out of habit).
If you munge your reply-to when sending to mailing lists you deserve what
you get -- or fail to get. Any decent mailing list will kick off anyone who
posts spam to the list or is suspected of harvesting on it.
--
.*. "Clouds are not spheres, mountains are not cones, coastlines are not
-() < circles, and bark is not smooth, nor does lightning travel in a
`*' straight line." -------------------------------------------------
-- B. Mandelbrot | http://surf.to/pgd.net
_____________________ ____|________ Paul Derbyshire pderbysh@usa.net
Programmer & Humanist|ICQ: 10423848|
^ permalink raw reply [flat|nested] 264+ messages in thread
* Re: [Meta] Enough of the "egcs.cygnus.com" already!
1999-02-01 8:23 ` Joe Buck
[not found] ` < 199902011621.IAA00385@atrus.synopsys.com >
@ 1999-02-28 22:53 ` postmaster
1999-02-28 22:53 ` Joe Buck
2 siblings, 0 replies; 264+ messages in thread
From: postmaster @ 1999-02-28 22:53 UTC (permalink / raw)
To: EGCS mailing list
[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain, Size: 943 bytes --]
Den 01-Feb-99 17:21:45 skrev Joe Buck følgende om "Re: [Meta] Enough of the "egcs.cygnus.com" already!":
>> We'll probably have an auto-reply for all the old addresses.
> Which won't reach the people who spam-protect their email address
> when mailing to large mailing lists (or just out of habit).
It will if they do it properly. ;-)
Regards,
/¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯T¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯\
| Rask Ingemann Lambertsen | postmaster@rask.nospam.kampsax.k-net.dk |
| Registered Phase5 developer | WWW: http://www.gbar.dtu.dk/~c948374/ |
| A4000, 775 kkeys/s (RC5-64) | "ThrustMe" on XPilot and EFnet IRC |
| Do artificial plants need artificial water? |
^ permalink raw reply [flat|nested] 264+ messages in thread
* Re: [Meta] Enough of the "egcs.cygnus.com" already!
1999-02-01 8:23 ` Joe Buck
[not found] ` < 199902011621.IAA00385@atrus.synopsys.com >
1999-02-28 22:53 ` postmaster
@ 1999-02-28 22:53 ` Joe Buck
2 siblings, 0 replies; 264+ messages in thread
From: Joe Buck @ 1999-02-28 22:53 UTC (permalink / raw)
To: law; +Cc: oliva, pderbysh, egcs
> > Either the relay or an automatic reply saying ``the new e-mail address
> > for reporting egcs bugs is egcs-bugs@egcs.cygnus.com, please submit
> > your report again, sorry for the inconvenience''.
> We'll probably have an auto-reply for all the old addresses.
Which won't reach the people who spam-protect their email address
when mailing to large mailing lists (or just out of habit).
We probably should archive the old messages at least for some transition
period.
^ permalink raw reply [flat|nested] 264+ messages in thread
* Re: [Meta] Enough of the "egcs.cygnus.com" already!
1999-02-01 7:50 ` Jeffrey A Law
[not found] ` < 3391.917883892@hurl.cygnus.com >
@ 1999-02-28 22:53 ` Jeffrey A Law
1 sibling, 0 replies; 264+ messages in thread
From: Jeffrey A Law @ 1999-02-28 22:53 UTC (permalink / raw)
To: Alexandre Oliva; +Cc: Paul Derbyshire, egcs
In message < or1zkab0ou.fsf@araguaia.dcc.unicamp.br >you write:
> No, I mean, we must keep at least egcs-bugs@cygnus.com as a valid
> address, otherwise people that don't know about the change won't be
> able to submit bug reports against egcs 1.1.1, that will probably
> still be floating around for a long time :-(
>
> Either the relay or an automatic reply saying ``the new e-mail address
> for reporting egcs bugs is egcs-bugs@egcs.cygnus.com, please submit
> your report again, sorry for the inconvenience''.
We'll probably have an auto-reply for all the old addresses.
And we'll be changing the address in that message RSN.
jeff
^ permalink raw reply [flat|nested] 264+ messages in thread
* Re: [Meta] Enough of the "egcs.cygnus.com" already!
[not found] ` < or1zkab0ou.fsf@araguaia.dcc.unicamp.br >
1999-02-01 7:50 ` Jeffrey A Law
@ 1999-02-01 15:58 ` Paul Derbyshire
1999-02-28 22:53 ` Paul Derbyshire
1 sibling, 1 reply; 264+ messages in thread
From: Paul Derbyshire @ 1999-02-01 15:58 UTC (permalink / raw)
To: egcs
At 01:31 PM 2/1/99 -0200, you wrote:
>Either the relay or an automatic reply saying ``the new e-mail address
>for reporting egcs bugs is egcs-bugs@egcs.cygnus.com, please submit
>your report again, sorry for the inconvenience''.
MAKE THAT THING QUOTE BACK THE ORIGINAL MESSAGE!! I've seen a few systems
where outgoing mail is either not automatically saved or isn't even saved
at all, and people using such systems will experience "please submit your
report again" as meaning "Please struggle to remember all that you wrote
and then rewrite it slowly and painstakingly from scratch, and at the end,
remember to use the right address!". This is why mailer_daemon mail quotes
back the bounced message too.
Best would be to have it send the message described, quote the oiginal
below it, and have a Reply-To: of egcs-bugs@egcs.com. Then all the guy has
to do who sees it is
1. Note "hmm, the damned address changed." which is what you want to remind
them.
2. Hit "reply".
3. Edit away the notice and prefix symbols on the requoted message.
4. Send.
5. Use the new address now.
--
.*. "Clouds are not spheres, mountains are not cones, coastlines are not
-() < circles, and bark is not smooth, nor does lightning travel in a
`*' straight line." -------------------------------------------------
-- B. Mandelbrot | http://surf.to/pgd.net
_____________________ ____|________ Paul Derbyshire pderbysh@usa.net
Programmer & Humanist|ICQ: 10423848|
^ permalink raw reply [flat|nested] 264+ messages in thread
* Re: [Meta] Enough of the "egcs.cygnus.com" already!
1999-02-01 15:58 ` Paul Derbyshire
@ 1999-02-28 22:53 ` Paul Derbyshire
0 siblings, 0 replies; 264+ messages in thread
From: Paul Derbyshire @ 1999-02-28 22:53 UTC (permalink / raw)
To: egcs
At 01:31 PM 2/1/99 -0200, you wrote:
>Either the relay or an automatic reply saying ``the new e-mail address
>for reporting egcs bugs is egcs-bugs@egcs.cygnus.com, please submit
>your report again, sorry for the inconvenience''.
MAKE THAT THING QUOTE BACK THE ORIGINAL MESSAGE!! I've seen a few systems
where outgoing mail is either not automatically saved or isn't even saved
at all, and people using such systems will experience "please submit your
report again" as meaning "Please struggle to remember all that you wrote
and then rewrite it slowly and painstakingly from scratch, and at the end,
remember to use the right address!". This is why mailer_daemon mail quotes
back the bounced message too.
Best would be to have it send the message described, quote the oiginal
below it, and have a Reply-To: of egcs-bugs@egcs.com. Then all the guy has
to do who sees it is
1. Note "hmm, the damned address changed." which is what you want to remind
them.
2. Hit "reply".
3. Edit away the notice and prefix symbols on the requoted message.
4. Send.
5. Use the new address now.
--
.*. "Clouds are not spheres, mountains are not cones, coastlines are not
-() < circles, and bark is not smooth, nor does lightning travel in a
`*' straight line." -------------------------------------------------
-- B. Mandelbrot | http://surf.to/pgd.net
_____________________ ____|________ Paul Derbyshire pderbysh@usa.net
Programmer & Humanist|ICQ: 10423848|
^ permalink raw reply [flat|nested] 264+ messages in thread
* Re: [Meta] Enough of the "egcs.cygnus.com" already!
1999-02-01 7:35 ` Alexandre Oliva
[not found] ` < or1zkab0ou.fsf@araguaia.dcc.unicamp.br >
@ 1999-02-28 22:53 ` Alexandre Oliva
1 sibling, 0 replies; 264+ messages in thread
From: Alexandre Oliva @ 1999-02-28 22:53 UTC (permalink / raw)
To: law; +Cc: Paul Derbyshire, egcs
On Feb 1, 1999, Jeffrey A Law <law@hurl.cygnus.com> wrote:
> In message < or4sp6b12f.fsf@araguaia.dcc.unicamp.br >you write:
>> On Feb 1, 1999, Jeffrey A Law <law@upchuck.cygnus.com> wrote:
>> > The @cygnus.com relays are scheduled to go away on or around March 1, 199
>> 9.
>> What about the following error message, printed by egcs 1.1.1?
>> bug.c:3: Please submit a full bug report to `egcs-bugs@cygnus.com'.
> Easily fixed ;-)
No, I mean, we must keep at least egcs-bugs@cygnus.com as a valid
address, otherwise people that don't know about the change won't be
able to submit bug reports against egcs 1.1.1, that will probably
still be floating around for a long time :-(
Either the relay or an automatic reply saying ``the new e-mail address
for reporting egcs bugs is egcs-bugs@egcs.cygnus.com, please submit
your report again, sorry for the inconvenience''.
--
Alexandre Oliva http://www.dcc.unicamp.br/~oliva aoliva@{acm.org}
oliva@{dcc.unicamp.br,gnu.org,egcs.cygnus.com,samba.org}
Universidade Estadual de Campinas, SP, Brasil
^ permalink raw reply [flat|nested] 264+ messages in thread
* Re: [Meta] Enough of the "egcs.cygnus.com" already!
1999-02-01 7:30 ` Jeffrey A Law
1999-02-01 7:35 ` Alexandre Oliva
@ 1999-02-01 7:59 ` Ken Raeburn
1999-02-28 22:53 ` Ken Raeburn
1999-02-28 22:53 ` Jeffrey A Law
2 siblings, 1 reply; 264+ messages in thread
From: Ken Raeburn @ 1999-02-01 7:59 UTC (permalink / raw)
To: law; +Cc: Alexandre Oliva, Paul Derbyshire, egcs
Jeffrey A Law <law@hurl.cygnus.com> writes:
> > bug.c:3: Please submit a full bug report to `egcs-bugs@cygnus.com'.
> Easily fixed ;-)
Retroactively? Or do you expect people to update to a new egcs
release within the next 28 days? We need *something* at that address,
even if it's a vacation-like program telling people to use the new
address.
^ permalink raw reply [flat|nested] 264+ messages in thread
* Re: [Meta] Enough of the "egcs.cygnus.com" already!
1999-02-01 7:59 ` Ken Raeburn
@ 1999-02-28 22:53 ` Ken Raeburn
0 siblings, 0 replies; 264+ messages in thread
From: Ken Raeburn @ 1999-02-28 22:53 UTC (permalink / raw)
To: law; +Cc: Alexandre Oliva, Paul Derbyshire, egcs
Jeffrey A Law <law@hurl.cygnus.com> writes:
> > bug.c:3: Please submit a full bug report to `egcs-bugs@cygnus.com'.
> Easily fixed ;-)
Retroactively? Or do you expect people to update to a new egcs
release within the next 28 days? We need *something* at that address,
even if it's a vacation-like program telling people to use the new
address.
^ permalink raw reply [flat|nested] 264+ messages in thread
* Re: [Meta] Enough of the "egcs.cygnus.com" already!
1999-02-01 7:30 ` Jeffrey A Law
1999-02-01 7:35 ` Alexandre Oliva
1999-02-01 7:59 ` Ken Raeburn
@ 1999-02-28 22:53 ` Jeffrey A Law
2 siblings, 0 replies; 264+ messages in thread
From: Jeffrey A Law @ 1999-02-28 22:53 UTC (permalink / raw)
To: Alexandre Oliva; +Cc: Paul Derbyshire, egcs
In message < or4sp6b12f.fsf@araguaia.dcc.unicamp.br >you write:
> On Feb 1, 1999, Jeffrey A Law <law@upchuck.cygnus.com> wrote:
>
> > The @cygnus.com relays are scheduled to go away on or around March 1, 199
> 9.
>
> What about the following error message, printed by egcs 1.1.1?
>
> bug.c:3: Please submit a full bug report to `egcs-bugs@cygnus.com'.
Easily fixed ;-)
jeff
^ permalink raw reply [flat|nested] 264+ messages in thread
* Re: [Meta] Enough of the "egcs.cygnus.com" already!
[not found] ` < or4sp6b12f.fsf@araguaia.dcc.unicamp.br >
1999-02-01 7:30 ` Jeffrey A Law
@ 1999-02-13 10:47 ` Jeffrey A Law
1999-02-28 22:53 ` Jeffrey A Law
1 sibling, 1 reply; 264+ messages in thread
From: Jeffrey A Law @ 1999-02-13 10:47 UTC (permalink / raw)
To: Alexandre Oliva; +Cc: Paul Derbyshire, egcs
In message < or4sp6b12f.fsf@araguaia.dcc.unicamp.br >you write:
> On Feb 1, 1999, Jeffrey A Law <law@upchuck.cygnus.com> wrote:
>
> > The @cygnus.com relays are scheduled to go away on or around March 1, 199
> 9.
>
> What about the following error message, printed by egcs 1.1.1?
>
> bug.c:3: Please submit a full bug report to `egcs-bugs@cygnus.com'.
An FYI -- I fixed all the addresses about a week ago :-)
jeff
^ permalink raw reply [flat|nested] 264+ messages in thread
* Re: [Meta] Enough of the "egcs.cygnus.com" already!
1999-02-13 10:47 ` Jeffrey A Law
@ 1999-02-28 22:53 ` Jeffrey A Law
0 siblings, 0 replies; 264+ messages in thread
From: Jeffrey A Law @ 1999-02-28 22:53 UTC (permalink / raw)
To: Alexandre Oliva; +Cc: Paul Derbyshire, egcs
In message < or4sp6b12f.fsf@araguaia.dcc.unicamp.br >you write:
> On Feb 1, 1999, Jeffrey A Law <law@upchuck.cygnus.com> wrote:
>
> > The @cygnus.com relays are scheduled to go away on or around March 1, 199
> 9.
>
> What about the following error message, printed by egcs 1.1.1?
>
> bug.c:3: Please submit a full bug report to `egcs-bugs@cygnus.com'.
An FYI -- I fixed all the addresses about a week ago :-)
jeff
^ permalink raw reply [flat|nested] 264+ messages in thread
* Re: [Meta] Enough of the "egcs.cygnus.com" already!
1999-02-01 7:27 ` Alexandre Oliva
[not found] ` < or4sp6b12f.fsf@araguaia.dcc.unicamp.br >
@ 1999-02-28 22:53 ` Alexandre Oliva
1 sibling, 0 replies; 264+ messages in thread
From: Alexandre Oliva @ 1999-02-28 22:53 UTC (permalink / raw)
To: law; +Cc: Paul Derbyshire, egcs
On Feb 1, 1999, Jeffrey A Law <law@upchuck.cygnus.com> wrote:
> The @cygnus.com relays are scheduled to go away on or around March 1, 1999.
What about the following error message, printed by egcs 1.1.1?
bug.c:3: Please submit a full bug report to `egcs-bugs@cygnus.com'.
--
Alexandre Oliva http://www.dcc.unicamp.br/~oliva aoliva@{acm.org}
oliva@{dcc.unicamp.br,gnu.org,egcs.cygnus.com,samba.org}
Universidade Estadual de Campinas, SP, Brasil
^ permalink raw reply [flat|nested] 264+ messages in thread
* Re: [Meta] Enough of the "egcs.cygnus.com" already!
1999-02-01 7:13 ` Jeffrey A Law
1999-02-01 7:27 ` Alexandre Oliva
@ 1999-02-28 22:53 ` Jeffrey A Law
1 sibling, 0 replies; 264+ messages in thread
From: Jeffrey A Law @ 1999-02-28 22:53 UTC (permalink / raw)
To: Paul Derbyshire; +Cc: egcs
In message <3.0.6.32.19990201010831.00880950@pop.netaddress.com>you write:
> Grr. I subscribe to the EGCS mailing list at egcs.cygnus.com and set a mail
> filter to filter anything with a To: or Cc: containing
> "egcs@egcs.cygnus.com" into an 'egcs' folder, figuring that it isn't likely
> that anyone would BCc: to the list and confound the filter.
>
> Trouble is, it seems you can post to the list using just "egcs@cygnus.com",
> since I keep finding a shitload of egcs mail in my main Inbox with this on
> the Cc: line!
The @cygnus.com relays are scheduled to go away on or around March 1, 1999.
jeff
^ permalink raw reply [flat|nested] 264+ messages in thread
[parent not found: <19990201200631.A227@tardis.ed.ac.uk>]
* Re: [Meta] Enough of the "egcs.cygnus.com" already!
[not found] ` <19990201200631.A227@tardis.ed.ac.uk>
@ 1999-02-01 15:31 ` Paul Derbyshire
1999-02-28 22:53 ` Paul Derbyshire
0 siblings, 1 reply; 264+ messages in thread
From: Paul Derbyshire @ 1999-02-01 15:31 UTC (permalink / raw)
To: Mark Brown; +Cc: egcs
At 08:06 PM 2/1/99 +0000, you wrote:
> Sender: owner-egcs@egcs.cygnus.com
>
>which is guarenteed to be in any message sent through this list.
I don't get any Sender: headers in my incoming egcs mail, interestingly
enough.
--
.*. "Clouds are not spheres, mountains are not cones, coastlines are not
-() < circles, and bark is not smooth, nor does lightning travel in a
`*' straight line." -------------------------------------------------
-- B. Mandelbrot | http://surf.to/pgd.net
_____________________ ____|________ Paul Derbyshire pderbysh@usa.net
Programmer & Humanist|ICQ: 10423848|
^ permalink raw reply [flat|nested] 264+ messages in thread
* Re: [Meta] Enough of the "egcs.cygnus.com" already!
1999-02-01 15:31 ` Paul Derbyshire
@ 1999-02-28 22:53 ` Paul Derbyshire
0 siblings, 0 replies; 264+ messages in thread
From: Paul Derbyshire @ 1999-02-28 22:53 UTC (permalink / raw)
To: Mark Brown; +Cc: egcs
At 08:06 PM 2/1/99 +0000, you wrote:
> Sender: owner-egcs@egcs.cygnus.com
>
>which is guarenteed to be in any message sent through this list.
I don't get any Sender: headers in my incoming egcs mail, interestingly
enough.
--
.*. "Clouds are not spheres, mountains are not cones, coastlines are not
-() < circles, and bark is not smooth, nor does lightning travel in a
`*' straight line." -------------------------------------------------
-- B. Mandelbrot | http://surf.to/pgd.net
_____________________ ____|________ Paul Derbyshire pderbysh@usa.net
Programmer & Humanist|ICQ: 10423848|
^ permalink raw reply [flat|nested] 264+ messages in thread
* Re: [Meta] Enough of the "egcs.cygnus.com" already!
1999-01-31 22:09 [Meta] Enough of the "egcs.cygnus.com" already! Paul Derbyshire
` (3 preceding siblings ...)
[not found] ` <19990201200631.A227@tardis.ed.ac.uk>
@ 1999-02-03 12:05 ` Rask Ingemann Lambertsen
1999-02-28 22:53 ` Rask Ingemann Lambertsen
4 siblings, 1 reply; 264+ messages in thread
From: Rask Ingemann Lambertsen @ 1999-02-03 12:05 UTC (permalink / raw)
To: EGCS mailing list
[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain, Size: 1769 bytes --]
Den 01-Feb-99 07:08:31 skrev Paul Derbyshire følgende om "[Meta] Enough of the "egcs.cygnus.com" already!":
> Grr. I subscribe to the EGCS mailing list at egcs.cygnus.com and set a mail
> filter to filter anything with a To: or Cc: containing
> "egcs@egcs.cygnus.com" into an 'egcs' folder, figuring that it isn't likely
> that anyone would BCc: to the list and confound the filter.
Mail sorting based on To:, Cc: or Bcc: headers hasn't ever worked, doesn't
work, and won't ever work. This doesn't seem to stop people from trying to do
so anyway. :-(
> Trouble is, it seems you can post to the list using just "egcs@cygnus.com",
> since I keep finding a shitload of egcs mail in my main Inbox with this on
> the Cc: line!
Good example of why it hasn't ever worked, doesn't work and won't ever work.
Searching for the
Delivered-To: mailing list egcs@egcs.cygnus.com
header does work. Always. Reliably.
Since it is quite normal for list subscribers of today not to know how
how do set up their mail readers, perhaps it should be mentioned somewhere
that this header appears in all egcs mailing list mail, so as to at least
provide the initial clue.
Regards,
/¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯T¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯\
| Rask Ingemann Lambertsen | E-mail: mailto:rask@kampsax.k-net.dk |
| Registered Phase5 developer | WWW: http://www.gbar.dtu.dk/~c948374/ |
| A4000, 775 kkeys/s (RC5-64) | "ThrustMe" on XPilot, ARCnet and IRC |
| Diplomacy is the art of saying "Nice doggie" till you can find a rock |
^ permalink raw reply [flat|nested] 264+ messages in thread
* Re: [Meta] Enough of the "egcs.cygnus.com" already!
1999-02-03 12:05 ` Rask Ingemann Lambertsen
@ 1999-02-28 22:53 ` Rask Ingemann Lambertsen
0 siblings, 0 replies; 264+ messages in thread
From: Rask Ingemann Lambertsen @ 1999-02-28 22:53 UTC (permalink / raw)
To: EGCS mailing list
[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain, Size: 1770 bytes --]
Den 01-Feb-99 07:08:31 skrev Paul Derbyshire følgende om "[Meta] Enough of the "egcs.cygnus.com" already!":
> Grr. I subscribe to the EGCS mailing list at egcs.cygnus.com and set a mail
> filter to filter anything with a To: or Cc: containing
> "egcs@egcs.cygnus.com" into an 'egcs' folder, figuring that it isn't likely
> that anyone would BCc: to the list and confound the filter.
Mail sorting based on To:, Cc: or Bcc: headers hasn't ever worked, doesn't
work, and won't ever work. This doesn't seem to stop people from trying to do
so anyway. :-(
> Trouble is, it seems you can post to the list using just "egcs@cygnus.com",
> since I keep finding a shitload of egcs mail in my main Inbox with this on
> the Cc: line!
Good example of why it hasn't ever worked, doesn't work and won't ever work.
Searching for the
Delivered-To: mailing list egcs@egcs.cygnus.com
header does work. Always. Reliably.
Since it is quite normal for list subscribers of today not to know how
how do set up their mail readers, perhaps it should be mentioned somewhere
that this header appears in all egcs mailing list mail, so as to at least
provide the initial clue.
Regards,
/¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯T¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯\
| Rask Ingemann Lambertsen | E-mail: mailto:rask@kampsax.k-net.dk |
| Registered Phase5 developer | WWW: http://www.gbar.dtu.dk/~c948374/ |
| A4000, 775 kkeys/s (RC5-64) | "ThrustMe" on XPilot, ARCnet and IRC |
| Diplomacy is the art of saying "Nice doggie" till you can find a rock |
^ permalink raw reply [flat|nested] 264+ messages in thread
[parent not found: <Franz>]
[parent not found: <Ken>]
[parent not found: <David>]
[parent not found: <Brad>]
[parent not found: <Eli>]
[parent not found: <Paul>]
end of thread, other threads:[~2001-06-12 6:48 UTC | newest]
Thread overview: 264+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
[not found] <Jeffrey>
[not found] ` <A>
[not found] ` <Law's>
[not found] ` <message>
[not found] ` <of>
[not found] ` <"Wed,>
[not found] ` <5>
[not found] ` <Fri,>
[not found] ` <"Thu,>
[not found] ` <"Sun,>
[not found] ` <19>
[not found] ` <"Mon,>
[not found] ` <01>
[not found] ` <Mar>
[not found] ` <99>
[not found] ` <Feb>
[not found] ` <1999>
[not found] ` <02:37:52>
[not found] ` <04:47:24>
[not found] ` <-0800>
1999-02-12 3:00 ` C++ default copy ctor not optimal Sylvain Pion
[not found] ` < 19990212120037.C13091@rigel.inria.fr >
1999-02-12 4:46 ` Sylvain Pion
1999-02-28 22:53 ` Sylvain Pion
[not found] ` <19990212134607.F13091.cygnus.egcs@rigel.inria.fr>
1999-02-12 13:41 ` Jason Merrill
[not found] ` <3.0.6.32.19990212172607.00844860.cygnus.egcs@pop.netaddress.com>
1999-02-12 15:27 ` Jason Merrill
1999-02-28 22:53 ` Jason Merrill
[not found] ` < u9d83fl2q8.fsf@yorick.cygnus.com >
1999-02-12 14:26 ` Paul Derbyshire
1999-02-28 22:53 ` Paul Derbyshire
1999-02-14 10:57 ` Sylvain Pion
1999-02-14 21:01 ` Jason Merrill
[not found] ` < u9iud4jm52.fsf@yorick.cygnus.com >
1999-02-15 17:15 ` Richard Henderson
[not found] ` < 19990215171524.A19063@cygnus.com >
1999-02-15 20:14 ` Jeffrey A Law
[not found] ` < 14555.919137968@upchuck >
1999-02-15 21:39 ` Richard Henderson
[not found] ` < 19990215213927.A19254@cygnus.com >
1999-02-16 0:10 ` Sylvain Pion
1999-02-28 22:53 ` Sylvain Pion
1999-02-28 22:53 ` Richard Henderson
1999-02-28 22:53 ` Jeffrey A Law
1999-02-16 10:08 ` Joe Buck
[not found] ` < 199902161807.KAA19010@atrus.synopsys.com >
1999-02-16 10:18 ` Richard Henderson
[not found] ` < 19990216101811.A19900@cygnus.com >
1999-02-16 10:33 ` Sylvain Pion
1999-02-28 22:53 ` Sylvain Pion
1999-02-28 22:53 ` Richard Henderson
1999-02-28 22:53 ` Joe Buck
1999-02-28 22:53 ` Richard Henderson
1999-02-28 22:53 ` Jason Merrill
1999-02-28 22:53 ` Sylvain Pion
1999-02-28 22:53 ` Jason Merrill
1999-02-28 22:53 ` Sylvain Pion
[not found] ` <3.0.6.32.19990212180551.00841100.cygnus.egcs@pop.netaddress.com>
1999-02-12 15:29 ` Code gen question Jason Merrill
[not found] ` < u990e3kxq8.fsf@yorick.cygnus.com >
1999-02-12 17:34 ` Paul Derbyshire
[not found] ` < 3.0.6.32.19990212203311.0083e6d0@pop.netaddress.com >
1999-02-12 17:39 ` Jeffrey A Law
1999-02-28 22:53 ` Jeffrey A Law
1999-02-28 22:53 ` Paul Derbyshire
1999-02-28 22:53 ` Jason Merrill
1999-02-24 16:27 ` Question about compiler-supplied assignment and copy with egcs Mike Stump
[not found] ` < 199902250026.QAA04615@kankakee.wrs.com >
1999-02-25 22:31 ` Paul Derbyshire
1999-02-28 22:53 ` Paul Derbyshire
[not found] ` <3.0.6.32.19990226013110.0083c530.cygnus.egcs@pop.globalserve.net>
1999-02-25 22:45 ` Jason Merrill
[not found] ` < u91zjdirxx.fsf@yorick.cygnus.com >
1999-02-27 21:01 ` Paul Derbyshire
[not found] ` < 3.0.6.32.19990228000118.00923340@pop.globalserve.net >
1999-02-27 21:58 ` Question about compiler-supplied assignment and copy with Joe Buck
[not found] ` < 199902280557.VAA14849@atrus.synopsys.com >
1999-02-27 23:29 ` Paul Derbyshire
1999-02-28 22:53 ` Paul Derbyshire
1999-02-28 22:53 ` Joe Buck
1999-02-28 22:53 ` Question about compiler-supplied assignment and copy with egcs Paul Derbyshire
[not found] ` <3.0.6.32.19990228000118.00923340.cygnus.egcs@pop.globalserve.net>
1999-02-27 23:55 ` Jason Merrill
[not found] ` < u9yalj7yin.fsf@yorick.cygnus.com >
1999-02-28 1:10 ` Paul Derbyshire
1999-02-28 2:51 ` Tudor Hulubei
[not found] ` < 14041.8114.947193.298212@hal.ttlc.net >
1999-02-28 4:36 ` Paul Derbyshire
1999-02-28 22:53 ` Paul Derbyshire
1999-02-28 22:53 ` Tudor Hulubei
1999-02-28 22:53 ` Paul Derbyshire
1999-03-01 2:28 ` Gerald Pfeifer
1999-03-31 23:46 ` Gerald Pfeifer
1999-02-28 22:53 ` Jason Merrill
1999-02-28 22:53 ` Jason Merrill
1999-02-28 22:53 ` Mike Stump
2000-11-19 13:03 ` Removal of V2 code Mark Mitchell
2000-11-19 17:10 ` Geoff Keating
[not found] ` <Mark>
2000-11-19 17:24 ` Christopher Faylor
2000-11-19 17:56 ` Mark Mitchell
2000-11-19 20:24 ` Geoff Keating
2000-11-19 21:52 ` Mark Mitchell
2000-11-19 22:12 ` Geoff Keating
2000-11-19 22:33 ` Mark Mitchell
2000-11-20 1:07 ` Mark Mitchell
2000-11-20 2:11 ` Geoff Keating
2000-11-21 10:56 ` Mark Mitchell
2000-11-21 12:20 ` Benjamin Kosnik
2000-11-21 12:45 ` Mark Mitchell
2000-11-21 12:37 ` Geoff Keating
2000-11-21 12:47 ` Mark Mitchell
2000-11-20 2:54 ` Franz Sirl
2000-11-21 6:38 ` Franz Sirl
2000-11-21 7:26 ` Daniel Berlin
2000-11-20 0:41 ` Andrew Cagney
2000-11-20 0:55 ` Mark Mitchell
2000-11-20 3:32 ` Marc Espie
2000-11-20 5:53 ` Joseph S. Myers
2000-11-20 8:34 ` Mark Mitchell
[not found] ` <00112021562300.00259@hallo>
2000-11-20 14:58 ` Mark Mitchell
2000-11-21 14:14 ` Geoff Keating
2000-11-21 15:06 ` Mark Mitchell
2000-11-21 16:08 ` Tom Tromey
2000-11-21 17:21 ` 2.95.3 (was Re: Removal of V2 code) Joe Buck
2000-11-22 13:55 ` Tom Tromey
2000-11-21 21:41 ` Removal of V2 code Mark Mitchell
2000-11-21 20:00 ` SC confidentiality Geoff Keating
2000-11-21 21:57 ` Mark Mitchell
[not found] ` <12:29:11>
[not found] ` <-0500>
1999-02-01 8:23 ` A Lisp compiler? Matthew X. Economou
1999-02-01 9:29 ` Ken Raeburn
1999-02-02 15:44 ` Matthew X. Economou
[not found] ` < w4ou2x4jrke.fsf@nemesis.irtnog.org >
1999-02-02 16:14 ` [Meta] " Paul Derbyshire
1999-02-28 22:53 ` Paul Derbyshire
1999-02-28 22:53 ` Matthew X. Economou
1999-02-19 23:14 ` Matthias Hölzl
1999-02-28 22:53 ` Matthias Hölzl
1999-02-28 22:53 ` Ken Raeburn
1999-02-28 22:53 ` Matthew X. Economou
1999-02-27 21:39 ` Confirmed template parsing bug: bug in error message generation Paul Derbyshire
1999-02-28 22:53 ` Paul Derbyshire
1999-03-01 0:02 ` Alexandre Oliva
[not found] ` < oriuclljxv.fsf@araguaia.dcc.unicamp.br >
1999-03-02 8:43 ` Paul Derbyshire
[not found] ` < 3.0.6.32.19990302114234.0086bd80@pop.globalserve.net >
1999-03-02 9:26 ` Robert Lipe
1999-03-31 23:46 ` Robert Lipe
1999-03-02 22:22 ` Alexandre Oliva
1999-03-31 23:46 ` Alexandre Oliva
1999-03-31 23:46 ` Paul Derbyshire
1999-03-31 23:46 ` Alexandre Oliva
1999-02-28 19:05 ` Possible egcs-1.1.2-pre2 configure problem on HP-UX 9.04 rodneybrown
1999-02-28 22:53 ` rodneybrown
1999-03-01 9:05 ` Alexandre Oliva
[not found] ` < orogmdf8jw.fsf@araguaia.dcc.unicamp.br >
1999-03-01 9:14 ` Franz Sirl
1999-03-01 9:32 ` Alexandre Oliva
1999-03-31 23:46 ` Alexandre Oliva
1999-03-31 23:46 ` Franz Sirl
1999-03-31 23:46 ` Alexandre Oliva
1999-03-01 9:18 ` Jeffrey A Law
1999-03-31 23:46 ` Jeffrey A Law
[not found] ` <(EST)>
1999-06-25 17:54 ` Occasional use of GNU ld problems Brad Lucier
1999-06-29 2:06 ` Alexandre Oliva
1999-06-29 2:20 ` Franz Sirl
1999-06-30 15:43 ` Franz Sirl
1999-06-30 15:43 ` Alexandre Oliva
1999-06-30 15:43 ` Brad Lucier
[not found] ` <08:25:39>
[not found] ` <-0700>
2001-05-09 9:58 ` Automake and friends and fastjar Mark Klein
2001-05-09 12:08 ` Tom Tromey
2001-05-09 12:15 ` Mark Klein
[not found] ` <"Fri,>
[not found] ` <11>
[not found] ` <Jun>
[not found] ` <2000>
[not found] ` <10:30:29>
[not found] ` <-0400>
2000-06-29 7:30 ` SSA implementation David Dolan
2000-06-29 11:59 ` Geoff Keating
2000-06-29 12:07 ` Errors from Gcc Matt Minnis
2000-06-29 13:43 ` Martin v. Loewis
2000-06-29 12:11 ` SSA implementation Mark Mitchell
2000-06-29 12:24 ` Gerald Pfeifer
2000-07-05 11:52 ` PowerPC code generation David J Schinsing
2000-07-05 12:15 ` David Young
2000-07-05 12:57 ` gcc and struct passing in function arguments? David Young
2000-07-05 13:09 ` Michael Meissner
2000-07-05 14:00 ` Joern Rennecke
2000-07-05 13:50 ` Alan Lehotsky
2000-07-05 13:26 ` PowerPC code generation Geoff Keating
2000-07-05 13:53 ` Franz Sirl
2000-07-05 14:20 ` Michael Meissner
2000-07-05 14:36 ` Geoff Keating
2000-07-05 19:54 ` David Edelsohn
[not found] ` <25>
[not found] ` <May>
[not found] ` <2001>
[not found] ` <10:06:51>
[not found] ` <+0300>
2001-06-07 18:27 ` Another RFC: regex in libiberty DJ Delorie
2001-06-07 18:31 ` Ian Lance Taylor
2001-06-07 18:33 ` DJ Delorie
2001-06-07 18:43 ` Ian Lance Taylor
2001-06-08 0:11 ` Eli Zaretskii
2001-06-08 9:18 ` Mark Mitchell
2001-06-08 9:59 ` Zack Weinberg
2001-06-08 10:05 ` H . J . Lu
2001-06-08 10:31 ` Eli Zaretskii
2001-06-08 10:39 ` H . J . Lu
2001-06-08 10:37 ` Eli Zaretskii
2001-06-11 22:50 ` Jim Blandy
2001-06-11 23:51 ` Randall R Schulz
2001-06-12 6:48 ` Jim Blandy
2001-06-09 13:34 ` Andrew Cagney
[not found] <19990608202201.F17154@admin3.jump.net>
[not found] ` <org142xios.fsf@saci.lsd.dcc.unicamp.br>
[not found] ` <3761d206.15532319@mailer.gwdg.de>
[not found] ` <oru2sg6sd1.fsf@saci.lsd.dcc.unicamp.br>
[not found] ` <3762cfb6.8581897@mailer.gwdg.de>
[not found] ` <oru2sf6hst.fsf@saci.lsd.dcc.unicamp.br>
1999-06-10 16:01 ` libs/csengine/basic/polyset.cpp:46: Internal compiler error 191 Philipp Thomas
1999-06-30 15:43 ` Philipp Thomas
[not found] ` <376b1082.25172596@mailer.gwdg.de>
1999-06-10 17:18 ` Alexandre Oliva
1999-06-10 17:50 ` Franz Sirl
1999-06-12 16:02 ` Alexandre Oliva
1999-06-15 4:11 ` Franz Sirl
1999-06-15 4:54 ` Alexandre Oliva
1999-06-30 15:43 ` Alexandre Oliva
1999-06-30 15:43 ` Franz Sirl
1999-06-30 15:43 ` Alexandre Oliva
1999-06-30 15:43 ` Franz Sirl
1999-06-30 15:43 ` Alexandre Oliva
1999-05-20 21:06 assemble_external on .class files Mark Klein
1999-05-22 14:23 ` Jeffrey A Law
1999-05-22 15:28 ` Mark Klein
1999-05-31 21:36 ` Mark Klein
1999-05-25 18:33 ` Mark Klein
1999-05-25 19:41 ` Jeffrey A Law
1999-05-25 21:00 ` Per Bothner
1999-05-25 21:50 ` Jeffrey A Law
1999-05-25 22:19 ` Mark Klein
1999-05-25 22:24 ` Jeffrey A Law
1999-05-31 21:36 ` Jeffrey A Law
1999-05-25 22:49 ` Per Bothner
1999-05-31 14:53 ` Mark Klein
1999-05-31 21:36 ` Mark Klein
1999-05-31 21:36 ` Per Bothner
1999-05-31 21:36 ` Mark Klein
1999-05-31 21:36 ` Jeffrey A Law
1999-05-31 21:36 ` Per Bothner
1999-05-31 21:36 ` Jeffrey A Law
1999-05-31 21:36 ` Mark Klein
1999-05-31 21:36 ` Jeffrey A Law
1999-05-31 21:36 ` Mark Klein
-- strict thread matches above, loose matches on Subject: below --
1999-02-24 15:13 Bug in libm or libstdc++ Paul Derbyshire
[not found] ` < 3.0.6.32.19990222090333.00847df0@pop.globalserve.net >
1999-02-24 15:34 ` Joe Buck
[not found] ` < 199902242332.PAA09334@atrus.synopsys.com >
1999-02-25 22:25 ` Paul Derbyshire
[not found] ` < 3.0.6.32.19990226012513.008e5450@pop.globalserve.net >
1999-02-26 10:38 ` Joe Buck
[not found] ` < 199902261836.KAA17757@atrus.synopsys.com >
1999-02-26 22:21 ` Paul Derbyshire
[not found] ` < 3.0.6.32.19990227012120.0084e180@pop.globalserve.net >
1999-02-27 9:40 ` Marc Espie
[not found] ` < 199902271740.SAA14323@quatramaran.ens.fr >
1999-02-27 20:45 ` Paul Derbyshire
1999-02-28 22:53 ` Paul Derbyshire
1999-03-01 0:19 ` Alexandre Oliva
[not found] ` < ord82tlj4l.fsf@araguaia.dcc.unicamp.br >
1999-03-02 7:58 ` Paul Derbyshire
1999-03-02 23:08 ` Alexandre Oliva
1999-03-31 23:46 ` Alexandre Oliva
1999-03-31 23:46 ` Paul Derbyshire
1999-03-31 23:46 ` Alexandre Oliva
1999-02-28 22:53 ` Marc Espie
1999-02-28 22:53 ` Paul Derbyshire
1999-02-28 22:53 ` Joe Buck
1999-02-28 22:53 ` Paul Derbyshire
1999-02-28 22:53 ` Joe Buck
1999-02-24 15:42 ` Bob McWhirter
[not found] ` < Pine.LNX.3.96.990224183714.7438r-100000@exeter.exeter.org >
1999-02-25 22:20 ` Paul Derbyshire
[not found] ` <199902261635.LAA23787@wagner.Princeton.EDU>
1999-02-27 19:08 ` Paul Derbyshire
1999-02-28 22:53 ` Paul Derbyshire
1999-03-01 8:30 ` Joern Rennecke
[not found] ` < 199903011630.QAA00110@phal.cygnus.co.uk >
1999-03-02 8:04 ` Paul Derbyshire
[not found] ` < 3.0.6.32.19990302110405.00945870@pop.globalserve.net >
1999-03-02 8:38 ` Joern Rennecke
1999-03-31 23:46 ` Joern Rennecke
1999-03-31 23:46 ` Paul Derbyshire
1999-03-31 23:46 ` Joern Rennecke
[not found] ` <Pine.SUN.3.91.990228142826.5950V-100000@is>
1999-02-28 4:57 ` Paul Derbyshire
1999-02-28 22:53 ` Paul Derbyshire
1999-02-28 22:53 ` Paul Derbyshire
1999-02-28 22:53 ` Bob McWhirter
1999-02-28 22:53 ` Paul Derbyshire
1999-01-31 22:09 [Meta] Enough of the "egcs.cygnus.com" already! Paul Derbyshire
1999-01-31 22:14 ` CaT
1999-01-31 22:24 ` Bob McWhirter
1999-01-31 22:50 ` Paul Derbyshire
1999-02-01 2:01 ` Franz Sirl
[not found] ` < 4.1.19990201105045.054320e0@mail.lauterbach.com >
1999-02-01 15:53 ` Paul Derbyshire
1999-02-28 22:53 ` Rask Ingemann Lambertsen
1999-02-28 22:53 ` Paul Derbyshire
1999-02-28 22:53 ` Franz Sirl
1999-01-31 23:12 ` Ken Raeburn
1999-02-01 7:13 ` Jeffrey A Law
1999-02-01 7:27 ` Alexandre Oliva
[not found] ` < or4sp6b12f.fsf@araguaia.dcc.unicamp.br >
1999-02-01 7:30 ` Jeffrey A Law
1999-02-01 7:35 ` Alexandre Oliva
[not found] ` < or1zkab0ou.fsf@araguaia.dcc.unicamp.br >
1999-02-01 7:50 ` Jeffrey A Law
[not found] ` < 3391.917883892@hurl.cygnus.com >
1999-02-01 8:23 ` Joe Buck
[not found] ` < 199902011621.IAA00385@atrus.synopsys.com >
1999-02-01 8:24 ` Jeffrey A Law
1999-02-28 22:53 ` Jeffrey A Law
1999-02-01 16:03 ` Paul Derbyshire
1999-02-28 22:53 ` Paul Derbyshire
1999-02-28 22:53 ` postmaster
1999-02-28 22:53 ` Joe Buck
1999-02-28 22:53 ` Jeffrey A Law
1999-02-01 15:58 ` Paul Derbyshire
1999-02-28 22:53 ` Paul Derbyshire
1999-02-28 22:53 ` Alexandre Oliva
1999-02-01 7:59 ` Ken Raeburn
1999-02-28 22:53 ` Ken Raeburn
1999-02-28 22:53 ` Jeffrey A Law
1999-02-13 10:47 ` Jeffrey A Law
1999-02-28 22:53 ` Jeffrey A Law
1999-02-28 22:53 ` Alexandre Oliva
1999-02-28 22:53 ` Jeffrey A Law
[not found] ` <19990201200631.A227@tardis.ed.ac.uk>
1999-02-01 15:31 ` Paul Derbyshire
1999-02-28 22:53 ` Paul Derbyshire
1999-02-03 12:05 ` Rask Ingemann Lambertsen
1999-02-28 22:53 ` Rask Ingemann Lambertsen
[not found] <Franz>
[not found] <Ken>
[not found] <David>
[not found] ` <J>
[not found] <Brad>
[not found] <Eli>
[not found] <Paul>
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).