This fixes:
https://bugzilla.mozilla.org/show_bug.cgi?id=1088848

---
 mingw-w64-headers/include/comip.h | 16 ++++++++--------
 1 file changed, 8 insertions(+), 8 deletions(-)


diff --git a/mingw-w64-headers/include/comip.h b/mingw-w64-headers/include/comip.h
index 396b888..5d47bd6 100644
--- a/mingw-w64-headers/include/comip.h
+++ b/mingw-w64-headers/include/comip.h
@@ -66,9 +66,9 @@ public:
     HRESULT hr = _QueryInterface(p);
     if(FAILED(hr) && (hr!=E_NOINTERFACE)) { _com_issue_error(hr); }
   }
-  template<typename _X> _com_ptr_t(LPSTR str) { new(this) _com_ptr_t(static_cast<LPCSTR> (str),NULL); }
-  template<typename _X> _com_ptr_t(LPWSTR str) { new(this) _com_ptr_t(static_cast<LPCWSTR> (str),NULL); }
-  template<typename _X> explicit _com_ptr_t(_com_ptr_t *p) : m_pInterface(NULL) {
+  _com_ptr_t(LPSTR str) { new(this) _com_ptr_t(static_cast<LPCSTR> (str),NULL); }
+  _com_ptr_t(LPWSTR str) { new(this) _com_ptr_t(static_cast<LPCWSTR> (str),NULL); }
+  explicit _com_ptr_t(_com_ptr_t *p) : m_pInterface(NULL) {
     if(!p) { _com_issue_error(E_POINTER); }
     else {
       m_pInterface = p->m_pInterface;
@@ -85,7 +85,7 @@ public:
 #endif
 
   _com_ptr_t(const _com_ptr_t &cp) throw() : m_pInterface(cp.m_pInterface) { _AddRef(); }
-  template<typename _X> _com_ptr_t(Interface *pInterface) throw() : m_pInterface(pInterface) { _AddRef(); }
+  _com_ptr_t(Interface *pInterface) throw() : m_pInterface(pInterface) { _AddRef(); }
   _com_ptr_t(Interface *pInterface,bool fAddRef) throw() : m_pInterface(pInterface) {
     if(fAddRef) _AddRef();
   }
@@ -115,7 +115,7 @@ public:
     if(FAILED(hr) && (hr!=E_NOINTERFACE)) { _com_issue_error(hr); }
     return *this;
   }
-  template<typename _X> _com_ptr_t &operator=(Interface *pInterface) throw() {
+  _com_ptr_t &operator=(Interface *pInterface) throw() {
     if(m_pInterface!=pInterface) {
       Interface *pOldInterface = m_pInterface;
       m_pInterface = pInterface;
@@ -174,9 +174,9 @@ public:
   template<typename _OtherIID> bool operator==(const _com_ptr_t<_OtherIID> &p) { return _CompareUnknown(p)==0; }
   template<typename _OtherIID> bool operator==(_com_ptr_t<_OtherIID> &p) { return _CompareUnknown(p)==0; }
   template<typename _InterfaceType> bool operator==(_InterfaceType *p) { return _CompareUnknown(p)==0; }
-  template<typename _X> bool operator==(Interface *p) { return (m_pInterface==p) ? true : _CompareUnknown(p)==0; }
-  template<typename _X> bool operator==(const _com_ptr_t &p) throw() { return operator==(p.m_pInterface); }
-  template<typename _X> bool operator==(_com_ptr_t &p) throw() { return operator==(p.m_pInterface); }
+  bool operator==(Interface *p) { return (m_pInterface==p) ? true : _CompareUnknown(p)==0; }
+  bool operator==(const _com_ptr_t &p) throw() { return operator==(p.m_pInterface); }
+  bool operator==(_com_ptr_t &p) throw() { return operator==(p.m_pInterface); }
   bool operator==(int null) {
     if(null!=0) { _com_issue_error(E_POINTER); }
     return !m_pInterface;

------------------------------------------------------------------------------
_______________________________________________
Mingw-w64-public mailing list
Mingw-w64-public@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/mingw-w64-public

Reply via email to