// Build don't link: // Copyright (C) 2000 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 4 Feb 2000 // Array of cv T decays to pointer to cv T, and pointer to array of cv T can // be converted to pointer to cv T. We need to make sure the `cv's don't // confuse us. typedef char const *ary_t[2]; void f0 (ary_t const *const &ary) { static_cast (ary); static_cast (ary); // ERROR - casts away const (void const *) (ary); } void f1 (ary_t *const &ary) { static_cast (ary); static_cast (ary); (void const *) (ary); } void f2 (ary_t const *&ary) { static_cast (ary); static_cast (ary); // ERROR - casts away const (void const *) (ary); } void f3 (ary_t *&ary) { static_cast (ary); static_cast (ary); (void const *) (ary); }