[xsd-users] ICE

Boris Kolpackov boris at codesynthesis.com
Sun Jun 25 06:50:55 EDT 2006


Hi Andrew,

Andrew Ward <andy.ward at hevday.com> writes:

> Here is a test case as requested:

Thanks for the test. I managed to strip it down to the following code
fragment:

template <typename X>
struct Base
{
  template <typename Y>
  operator Y () const
  {
    return x_;
  }

private:
  X x_;
};

struct Derived: Base<double>
{
};

void
f (Type const& p)
{
  int i = p;
}

Interestingly, it doesn't have much in common with the code in the
MSDN article. The only fix I could find is to disabled this operator
for VC 7.1 (VC 8 has this bug fixed). This will prevent some non-
trivial conversion cases from compilng with this compiler. Your case
will work, however. The fix will appear in the next release. Let me
know if you would a patch for 2.1.1.

Thanks again for reporting this.

-boris
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 652 bytes
Desc: Digital signature
Url : http://codesynthesis.com/pipermail/xsd-users/attachments/20060625/2276e9b3/attachment.pgp


More information about the xsd-users mailing list