is it a bug?
Joe Buck
jbuck@synopsys.com
Thu Apr 30 15:45:00 GMT 1998
> Both, egcs-19980418 and egcs-19980425, complain about the follwing code
> main(){
> double *p = new double[3](0);
> }
That's because it isn't C++. g++ used to have an extension that allowed
the use of constructor arguments with arrays, but it hasn't been
maintained and the egcs team wants to encourage people to program in C++,
not a strange dialect called g++. So you are likely to see the more
questionable GNU extensions eliminated.
If you need to do something like this (an array of values each of which
is initialized using constructor arguments), use vector<double> instead:
vector<double> p(3,0.0);
(saying p(3,0) here will result in trouble -- yet another problem).
More information about the Gcc
mailing list