1234285Sdim// { dg-do compile } 2234285Sdim// { dg-options "-pedantic -pedantic-errors" } 3234285Sdimtypedef int FIC(int) const; 4234285Sdimtypedef int FI(int); 5234285Sdim 6234285SdimFIC f; // { dg-error "qualified" } 7234285Sdim// { dg-error "ignoring" "ignoring" { target *-*-* } 6 } 8234285Sdimstruct S { 9234285Sdim FIC f; // OK 10234285Sdim 11234285Sdim const FI g; // { dg-error "qualifier" } 12234285Sdim 13234285Sdim int h(int) const; 14234285Sdim 15296417Sdim}; 16234285SdimFIC S::*pm = &S::f; 17234285Sdimconst FI S::*pm2 = &S::f; // { dg-error "qualifier" } 18276479Sdim// { dg-error "cannot convert" "cannot convert" { target *-*-* } 17 } 19276479Sdimconst FIC S::*pm3 = &S::f; // { dg-error "qualifier" } 20234285Sdim 21234285Sdimint S::f(int) const 22261991Sdim{ 23234285Sdim return 17; 24234285Sdim} 25234285Sdim 26234285Sdim 27296417Sdimint foo(float) const // { dg-error "qualifier" } 28296417Sdim{ 29296417Sdim return 0; 30234285Sdim} 31296417Sdim 32296417Sdimint bar(float) volatile; // { dg-error "qualifier" } 33296417Sdim