$include_dir="/home/hyper-archives/boost-users/include"; include("$include_dir/msg-header.inc") ?>
From: Richard Crossley (rdc_at_[hidden])
Date: 2004-06-07 19:17:14
I'm seeing, what appears to me anyhow, rather strange behaviour with
is_const and remove_const etc when used with arrays.
With VC71 and a recent cvs I see...
is_same<remove_const<const int[1]>::type,int[1]>::value; // true
is_const<const int[1]>::value; // false
??
is_same<remove_const<const int[1][1]>::type,int[1][1]>::value; // false
??
is_same<add_const<int[1][1]>::type,const int[1][1]>::value; // true
is_const<const int[1][1]>::value; // false
??
is_volatile<volatile int[1]>::value; //
false ??
is_same<remove_volatile<volatile int[1][1]>::type,int[1][1]>::value; //
false ??
is_same<add_volatile<int[1][1]>::type,volatile int[1][1]>::value; //
true
Using Comeau 4.3.3;
is_same<remove_const<const int[1]>::type,int[1]>::value; // true
is_const<const int[1]>::value; // true
is_same<remove_const<const int[1][1]>::type,int[1][1]>::value; // false
??
is_same<add_const<int[1][1]>::type,const int[1][1]>::value; // true
is_const<const int[1][1]>::value; // true
is_volatile<volatile int[1]>::value; //
true
is_same<remove_volatile<volatile int[1][1]>::type,int[1][1]>::value; //
false ??
is_same<add_volatile<int[1][1]>::type,volatile int[1][1]>::value; //
true
Regards,
Richard.