// { dg-options "" } // Copyright (C) 2004 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 20 Oct 2004 // DR 195 will allow conversions between function and object pointers // under some circumstances. It is in drafting, so we don't implement // it (yet). // this checks we are silent when not being pedantic. typedef void (*PF)(void); typedef void *PV; typedef int *PO; void foo () { PF pf; PV pv; PO po; /* the following two will almost definitly be ok with 195. */ pf = reinterpret_cast (pv); pv = reinterpret_cast (pf); /* the following two might or might not be ok with 195. */ pf = reinterpret_cast (po); po = reinterpret_cast (pf); /* These will never be ok, as they are implicit. */ pv = pf; // { dg-error "invalid conversion" "" } pf = pv; // { dg-error "invalid conversion" "" } }