After reading the previous posts I tried to compile the latest CVS version with Microsoft Visual Studio 2005 and I still get the errors below. Compiling on a Mac OS X platform no problems at all.
Thanks for your help!
------ Build started: Project: vmime, Configuration: Debug Win32 ------
Performing Pre-Build Event...
1 file(s) copied.
Compiling...
service.cpp
c:\mydata\dev\lib\libvmime-0.8.1\vmime\utility\smartptr.hpp(341) : error C2027: use of undefined type 'vmime::security::sasl::SASLSession'
c:\mydata\dev\lib\libvmime-0.8.1\vmime\security\sasl\saslauthenticator.hpp(39) : see declaration of 'vmime::security::sasl::SASLSession'
c:\mydata\dev\lib\libvmime-0.8.1\vmime\utility\smartptr.hpp(338) : while compiling class template member function 'void vmime::utility::ref<T>::detach(void)'
with
[
T=vmime::security::sasl::SASLSession
]
c:\mydata\dev\lib\libvmime-0.8.1\vmime\security\sasl\defaultsaslauthenticator.hpp(73) : see reference to class template instantiation 'vmime::utility::ref<T>' being compiled
with
[
T=vmime::security::sasl::SASLSession
]
c:\mydata\dev\lib\libvmime-0.8.1\vmime\utility\smartptr.hpp(341) : error C2227: left of '->getRefManager' must point to class/struct/union/generic type
c:\mydata\dev\lib\libvmime-0.8.1\vmime\utility\smartptr.hpp(341) : error C2227: left of '->releaseStrong' must point to class/struct/union/generic type
serviceFactory.cpp
c:\mydata\dev\lib\libvmime-0.8.1\vmime\utility\smartptr.hpp(341) : error C2027: use of undefined type 'vmime::net::maildir::maildirFormat'
c:\mydata\dev\lib\libvmime-0.8.1\vmime\net\maildir\maildirstore.hpp(47) : see declaration of 'vmime::net::maildir::maildirFormat'
c:\mydata\dev\lib\libvmime-0.8.1\vmime\utility\smartptr.hpp(338) : while compiling class template member function 'void vmime::utility::ref<T>::detach(void)'
with
[
T=vmime::net::maildir::maildirFormat
]
c:\mydata\dev\lib\libvmime-0.8.1\vmime\net\maildir\maildirstore.hpp(97) : see reference to class template instantiation 'vmime::utility::ref<T>' being compiled
with
[
T=vmime::net::maildir::maildirFormat
]
c:\mydata\dev\lib\libvmime-0.8.1\vmime\utility\smartptr.hpp(341) : error C2227: left of '->getRefManager' must point to class/struct/union/generic type
c:\mydata\dev\lib\libvmime-0.8.1\vmime\utility\smartptr.hpp(341) : error C2227: left of '->releaseStrong' must point to class/struct/union/generic type
maildirMessage.cpp
c:\mydata\dev\lib\libvmime-0.8.1\vmime\utility\smartptr.hpp(341) : error C2027: use of undefined type 'vmime::net::maildir::maildirFormat'
c:\mydata\dev\lib\libvmime-0.8.1\vmime\net\maildir\maildirstore.hpp(47) : see declaration of 'vmime::net::maildir::maildirFormat'
c:\mydata\dev\lib\libvmime-0.8.1\vmime\utility\smartptr.hpp(338) : while compiling class template member function 'void vmime::utility::ref<T>::detach(void)'
with
[
T=vmime::net::maildir::maildirFormat
]
c:\mydata\dev\lib\libvmime-0.8.1\vmime\net\maildir\maildirstore.hpp(97) : see reference to class template instantiation 'vmime::utility::ref<T>' being compiled
with
[
T=vmime::net::maildir::maildirFormat
]
c:\mydata\dev\lib\libvmime-0.8.1\vmime\utility\smartptr.hpp(341) : error C2227: left of '->getRefManager' must point to class/struct/union/generic type
c:\mydata\dev\lib\libvmime-0.8.1\vmime\utility\smartptr.hpp(341) : error C2227: left of '->releaseStrong' must point to class/struct/union/generic type
maildirUtils.cpp
c:\mydata\dev\lib\libvmime-0.8.1\vmime\utility\smartptr.hpp(341) : error C2027: use of undefined type 'vmime::net::maildir::maildirFormat'
c:\mydata\dev\lib\libvmime-0.8.1\vmime\net\maildir\maildirstore.hpp(47) : see declaration of 'vmime::net::maildir::maildirFormat'
c:\mydata\dev\lib\libvmime-0.8.1\vmime\utility\smartptr.hpp(338) : while compiling class template member function 'void vmime::utility::ref<T>::detach(void)'
with
[
T=vmime::net::maildir::maildirFormat
]
c:\mydata\dev\lib\libvmime-0.8.1\vmime\net\maildir\maildirstore.hpp(97) : see reference to class template instantiation 'vmime::utility::ref<T>' being compiled
with
[
T=vmime::net::maildir::maildirFormat
]
c:\mydata\dev\lib\libvmime-0.8.1\vmime\utility\smartptr.hpp(341) : error C2227: left of '->getRefManager' must point to class/struct/union/generic type
c:\mydata\dev\lib\libvmime-0.8.1\vmime\utility\smartptr.hpp(341) : error C2227: left of '->releaseStrong' must point to class/struct/union/generic type
defaultSASLAuthenticator.cpp
c:\mydata\dev\lib\libvmime-0.8.1\vmime\utility\smartptr.hpp(341) : error C2027: use of undefined type 'vmime::security::sasl::SASLContext'
c:\mydata\dev\lib\libvmime-0.8.1\vmime\security\sasl\saslsession.hpp(40) : see declaration of 'vmime::security::sasl::SASLContext'
c:\mydata\dev\lib\libvmime-0.8.1\vmime\utility\smartptr.hpp(338) : while compiling class template member function 'void vmime::utility::ref<T>::detach(void)'
with
[
T=vmime::security::sasl::SASLContext
]
c:\mydata\dev\lib\libvmime-0.8.1\vmime\security\sasl\saslsession.hpp(129) : see reference to class template instantiation 'vmime::utility::ref<T>' being compiled
with
[
T=vmime::security::sasl::SASLContext
]
c:\mydata\dev\lib\libvmime-0.8.1\vmime\utility\smartptr.hpp(341) : error C2227: left of '->getRefManager' must point to class/struct/union/generic type
c:\mydata\dev\lib\libvmime-0.8.1\vmime\utility\smartptr.hpp(341) : error C2227: left of '->releaseStrong' must point to class/struct/union/generic type
SASLSocket.cpp
c:\mydata\dev\lib\libvmime-0.8.1\vmime\utility\smartptr.hpp(341) : error C2027: use of undefined type 'vmime::security::sasl::SASLContext'
c:\mydata\dev\lib\libvmime-0.8.1\vmime\security\sasl\saslsession.hpp(40) : see declaration of 'vmime::security::sasl::SASLContext'
c:\mydata\dev\lib\libvmime-0.8.1\vmime\utility\smartptr.hpp(338) : while compiling class template member function 'void vmime::utility::ref<T>::detach(void)'
with
[
T=vmime::security::sasl::SASLContext
]
c:\mydata\dev\lib\libvmime-0.8.1\vmime\security\sasl\saslsession.hpp(129) : see reference to class template instantiation 'vmime::utility::ref<T>' being compiled
with
[
T=vmime::security::sasl::SASLContext
]
c:\mydata\dev\lib\libvmime-0.8.1\vmime\utility\smartptr.hpp(341) : error C2227: left of '->getRefManager' must point to class/struct/union/generic type
c:\mydata\dev\lib\libvmime-0.8.1\vmime\utility\smartptr.hpp(341) : error C2227: left of '->releaseStrong' must point to class/struct/union/generic type
Generating Code...
Build log was saved at "file://c:\myData\dev\Lib\libvmime-0.8.1\Debug\BuildLog.htm"
vmime - 18 error(s), 0 warning(s)
========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ==========
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
You should try to upgrade to the latest version of your compiler as the current one seems to have some issues with templates and forward-declared classes.
Vincent
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Thanks for your quickly reply. I have upgraded my MSVS 2005 version to SP1. Same issues came up. I have compiled many times code using forward declared classes and I did not jump into these issues. Maybe the problem is the using of templates plus forward declared classes.
I am currently using your project on Mac OS X and works great!
If you have any suggestion for the MSVS issue, please let me know.
Raimondo
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Hello
After reading the previous posts I tried to compile the latest CVS version with Microsoft Visual Studio 2005 and I still get the errors below. Compiling on a Mac OS X platform no problems at all.
Thanks for your help!
------ Build started: Project: vmime, Configuration: Debug Win32 ------
Performing Pre-Build Event...
1 file(s) copied.
Compiling...
service.cpp
c:\mydata\dev\lib\libvmime-0.8.1\vmime\utility\smartptr.hpp(341) : error C2027: use of undefined type 'vmime::security::sasl::SASLSession'
c:\mydata\dev\lib\libvmime-0.8.1\vmime\security\sasl\saslauthenticator.hpp(39) : see declaration of 'vmime::security::sasl::SASLSession'
c:\mydata\dev\lib\libvmime-0.8.1\vmime\utility\smartptr.hpp(338) : while compiling class template member function 'void vmime::utility::ref<T>::detach(void)'
with
[
T=vmime::security::sasl::SASLSession
]
c:\mydata\dev\lib\libvmime-0.8.1\vmime\security\sasl\defaultsaslauthenticator.hpp(73) : see reference to class template instantiation 'vmime::utility::ref<T>' being compiled
with
[
T=vmime::security::sasl::SASLSession
]
c:\mydata\dev\lib\libvmime-0.8.1\vmime\utility\smartptr.hpp(341) : error C2227: left of '->getRefManager' must point to class/struct/union/generic type
c:\mydata\dev\lib\libvmime-0.8.1\vmime\utility\smartptr.hpp(341) : error C2227: left of '->releaseStrong' must point to class/struct/union/generic type
serviceFactory.cpp
c:\mydata\dev\lib\libvmime-0.8.1\vmime\utility\smartptr.hpp(341) : error C2027: use of undefined type 'vmime::net::maildir::maildirFormat'
c:\mydata\dev\lib\libvmime-0.8.1\vmime\net\maildir\maildirstore.hpp(47) : see declaration of 'vmime::net::maildir::maildirFormat'
c:\mydata\dev\lib\libvmime-0.8.1\vmime\utility\smartptr.hpp(338) : while compiling class template member function 'void vmime::utility::ref<T>::detach(void)'
with
[
T=vmime::net::maildir::maildirFormat
]
c:\mydata\dev\lib\libvmime-0.8.1\vmime\net\maildir\maildirstore.hpp(97) : see reference to class template instantiation 'vmime::utility::ref<T>' being compiled
with
[
T=vmime::net::maildir::maildirFormat
]
c:\mydata\dev\lib\libvmime-0.8.1\vmime\utility\smartptr.hpp(341) : error C2227: left of '->getRefManager' must point to class/struct/union/generic type
c:\mydata\dev\lib\libvmime-0.8.1\vmime\utility\smartptr.hpp(341) : error C2227: left of '->releaseStrong' must point to class/struct/union/generic type
maildirMessage.cpp
c:\mydata\dev\lib\libvmime-0.8.1\vmime\utility\smartptr.hpp(341) : error C2027: use of undefined type 'vmime::net::maildir::maildirFormat'
c:\mydata\dev\lib\libvmime-0.8.1\vmime\net\maildir\maildirstore.hpp(47) : see declaration of 'vmime::net::maildir::maildirFormat'
c:\mydata\dev\lib\libvmime-0.8.1\vmime\utility\smartptr.hpp(338) : while compiling class template member function 'void vmime::utility::ref<T>::detach(void)'
with
[
T=vmime::net::maildir::maildirFormat
]
c:\mydata\dev\lib\libvmime-0.8.1\vmime\net\maildir\maildirstore.hpp(97) : see reference to class template instantiation 'vmime::utility::ref<T>' being compiled
with
[
T=vmime::net::maildir::maildirFormat
]
c:\mydata\dev\lib\libvmime-0.8.1\vmime\utility\smartptr.hpp(341) : error C2227: left of '->getRefManager' must point to class/struct/union/generic type
c:\mydata\dev\lib\libvmime-0.8.1\vmime\utility\smartptr.hpp(341) : error C2227: left of '->releaseStrong' must point to class/struct/union/generic type
maildirUtils.cpp
c:\mydata\dev\lib\libvmime-0.8.1\vmime\utility\smartptr.hpp(341) : error C2027: use of undefined type 'vmime::net::maildir::maildirFormat'
c:\mydata\dev\lib\libvmime-0.8.1\vmime\net\maildir\maildirstore.hpp(47) : see declaration of 'vmime::net::maildir::maildirFormat'
c:\mydata\dev\lib\libvmime-0.8.1\vmime\utility\smartptr.hpp(338) : while compiling class template member function 'void vmime::utility::ref<T>::detach(void)'
with
[
T=vmime::net::maildir::maildirFormat
]
c:\mydata\dev\lib\libvmime-0.8.1\vmime\net\maildir\maildirstore.hpp(97) : see reference to class template instantiation 'vmime::utility::ref<T>' being compiled
with
[
T=vmime::net::maildir::maildirFormat
]
c:\mydata\dev\lib\libvmime-0.8.1\vmime\utility\smartptr.hpp(341) : error C2227: left of '->getRefManager' must point to class/struct/union/generic type
c:\mydata\dev\lib\libvmime-0.8.1\vmime\utility\smartptr.hpp(341) : error C2227: left of '->releaseStrong' must point to class/struct/union/generic type
defaultSASLAuthenticator.cpp
c:\mydata\dev\lib\libvmime-0.8.1\vmime\utility\smartptr.hpp(341) : error C2027: use of undefined type 'vmime::security::sasl::SASLContext'
c:\mydata\dev\lib\libvmime-0.8.1\vmime\security\sasl\saslsession.hpp(40) : see declaration of 'vmime::security::sasl::SASLContext'
c:\mydata\dev\lib\libvmime-0.8.1\vmime\utility\smartptr.hpp(338) : while compiling class template member function 'void vmime::utility::ref<T>::detach(void)'
with
[
T=vmime::security::sasl::SASLContext
]
c:\mydata\dev\lib\libvmime-0.8.1\vmime\security\sasl\saslsession.hpp(129) : see reference to class template instantiation 'vmime::utility::ref<T>' being compiled
with
[
T=vmime::security::sasl::SASLContext
]
c:\mydata\dev\lib\libvmime-0.8.1\vmime\utility\smartptr.hpp(341) : error C2227: left of '->getRefManager' must point to class/struct/union/generic type
c:\mydata\dev\lib\libvmime-0.8.1\vmime\utility\smartptr.hpp(341) : error C2227: left of '->releaseStrong' must point to class/struct/union/generic type
SASLSocket.cpp
c:\mydata\dev\lib\libvmime-0.8.1\vmime\utility\smartptr.hpp(341) : error C2027: use of undefined type 'vmime::security::sasl::SASLContext'
c:\mydata\dev\lib\libvmime-0.8.1\vmime\security\sasl\saslsession.hpp(40) : see declaration of 'vmime::security::sasl::SASLContext'
c:\mydata\dev\lib\libvmime-0.8.1\vmime\utility\smartptr.hpp(338) : while compiling class template member function 'void vmime::utility::ref<T>::detach(void)'
with
[
T=vmime::security::sasl::SASLContext
]
c:\mydata\dev\lib\libvmime-0.8.1\vmime\security\sasl\saslsession.hpp(129) : see reference to class template instantiation 'vmime::utility::ref<T>' being compiled
with
[
T=vmime::security::sasl::SASLContext
]
c:\mydata\dev\lib\libvmime-0.8.1\vmime\utility\smartptr.hpp(341) : error C2227: left of '->getRefManager' must point to class/struct/union/generic type
c:\mydata\dev\lib\libvmime-0.8.1\vmime\utility\smartptr.hpp(341) : error C2227: left of '->releaseStrong' must point to class/struct/union/generic type
Generating Code...
Build log was saved at "file://c:\myData\dev\Lib\libvmime-0.8.1\Debug\BuildLog.htm"
vmime - 18 error(s), 0 warning(s)
========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ==========
Hello,
You should try to upgrade to the latest version of your compiler as the current one seems to have some issues with templates and forward-declared classes.
Vincent
Hi Vincent
Thanks for your quickly reply. I have upgraded my MSVS 2005 version to SP1. Same issues came up. I have compiled many times code using forward declared classes and I did not jump into these issues. Maybe the problem is the using of templates plus forward declared classes.
I am currently using your project on Mac OS X and works great!
If you have any suggestion for the MSVS issue, please let me know.
Raimondo
I have the same problem with the VC++ Express Edition 2008 .. is there a solution ?