Menu

Visual Studio 2005 smartptr.hpp error

Help
raystorm1
2007-05-28
2013-04-25
  • raystorm1

    raystorm1 - 2007-05-28

    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 ==========

     
    • Vincent Richard

      Vincent Richard - 2007-05-28

      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

       
    • raystorm1

      raystorm1 - 2007-05-29

      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

       
  • Bhiri Slim

    Bhiri Slim - 2011-01-26

    I have the same problem with the VC++ Express Edition 2008 .. is there a solution ?

     

Log in to post a comment.

MongoDB Logo MongoDB