Path: utzoo!utgpu!news-server.csri.toronto.edu!cs.utexas.edu!rice!uw-beaver!stowe.cs.washington.edu!pauld From: pauld@cs.washington.edu (Paul Barton-Davis) Newsgroups: comp.lang.c++ Subject: cast of a bound pointer: why ? Message-ID: <1991Jun11.191016.9873@beaver.cs.washington.edu> Date: 11 Jun 91 19:10:16 GMT Sender: news@beaver.cs.washington.edu (USENET News System) Organization: Computer Science & Engineering, U. of Washington, Seattle Lines: 32 Originator: pauld@stowe.cs.washington.edu Something that's been bothering me for a little while: we have some code that often casts a bound pointer to a member function: class Thread; class Scheduluer; Thread thread = new Thread; instance = new Scheduler; ... thread->start(int (*)()) instance->member_function, arg); being the most common example. I notice from browsing the anachronism's section of the AT&T 2.1 reference manual (not the ARM, but the manual that comes with the compiler itself), that this is now deemed an anachronism, raising the possibility that it may never be allowed in future versions. My understanding of this position is that it really boils down to an syntactic nicety: ptr to member function != ptr to function Can anyone explain the necessity for this distinction, and perhaps more importantly, can anyone comment on the possibility that it will no longer be possible to use this construct ? -- Paul Barton-Davis Man has survived because he did not know how to realize his wishes. Now that he can realize them, he must either change them, or perish.