After the following declarations - typedef void (class_y::*state_entry_proc) (); state_entry_proc ref_proc = class_y::public_proc; - the following code in a "class_y" member function - void class_y::any_proc () { ref_proc (); }; - gives a compile error (must use ->* or .* to call member function).
Assigned to pbrown. My eyes hurt.
ouch. So do mine. This rather convoluted bit of code will certainly be difficult for the compiler maintainers to fix, but I do suggest you report it to the egcs team. Again, a bug of this magnitude is currently beyond our abilities to repair. All we can do is wait for the next compiler release.