Hi, Thanks to a suggestion from Doug Landauer, I found the heart of the problem, which is that &foo::bar is a pointer-to-member, but &(foo::bar) is not. Evidently this is from section 5.3.1 of the standard. I also had to remove the use of macro, which shouldn't have made a difference, but did...but I won't argue with what works. :0 Brent