在 2024-08-12 11:01, Rafael Kitover 写道:
+#ifndef __CYGWIN__
    operator int() const;
    operator unsigned int() const;
+#endif

I suspect this is correct, because on Cygwin `__LONG32` is a typedef for `int`, 
but then ...

+#ifndef __CYGWIN__
   _variant_t(unsigned int uiSrc) throw();
+#endif

Is this enough? Did you miss an overload for `int`?

Really, it looks that passing an `int` to these two overloads (they do overload!) is likely to fail due to ambiguity:

   ```
   _variant_t(__LONG32 lSrc,VARTYPE vtSrc = VT_I4);
   _variant_t(int iSrc) throw();
   ```




--
Best regards,
LIU Hao

Attachment: OpenPGP_signature.asc
Description: OpenPGP digital signature

_______________________________________________
Mingw-w64-public mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/mingw-w64-public

Reply via email to