This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: egcs-1.1.1 issues
- To: egcs at cygnus dot com
- Subject: Re: egcs-1.1.1 issues
- From: Laurent Bonnaud <bonnaud at irisa dot fr>
- Date: 16 Sep 1998 17:29:20 +0200
- References: <7730.905928074@hurl.cygnus.com>
>>>>> "Jeff" == Jeffrey A Law <law@cygnus.com> writes:
Jeff>
Jeff> I haven't had a chance to walk back through the new bug reports, but
Jeff> I have seen lots of problems reported with QT (particularly on Alphas)
Jeff> and various PPC Linux problems. So those problems should probably
Jeff> deserve some consideration for egcs-1.1.1.
Hi,
I have reported an ICE40 a few monthes ago and it is still in egcs-1.1
and in egcs-2.92.04 19980906 :
http://www.cygnus.com/ml/egcs-bugs/1998-May/0472.html
The source is included below for your convenience.
Several other peoples have reported ICEs 40, but i don't know if they
are related.
Here are other (less serious) bugs :
http://www.cygnus.com/ml/egcs-bugs/1998-May/0612.html
http://www.cygnus.com/ml/egcs-bugs/1998-Apr/0605.html
--
Laurent.
template <int i>
struct Sized {
float array[i];
};
template <class T>
struct rank_type {
enum { value = 0 };
};
template <class T,int N>
struct rank_type<T[N]> {
enum { value = 1 + rank_type<T>::value };
};
template <class T>
Sized<rank_type<T[1]>::value> type_deduction_helper(T x[])
{
return Sized<rank_type<T[1]>::value>();
}
#define Rank(x) (sizeof(type_deduction_helper(x).array)/(sizeof(float)))
void f()
{
double d[10][10][10]; // works for double, too
int x[Rank(d)];
}