Just to follow up, I found a workaround for this problem. Instantiating an explicit string variable and passing it to the constructor (rather than using a temporary) makes everything work:
std::string s("foo"); foo tmp(s); instead of foo tmp("foo"); Daniel -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]