[LLVMbugs] [Bug 11993] New: call to function 'intrusive_ptr_release' that is neither visible

bugzilla-daemon at llvm.org bugzilla-daemon at llvm.org
Mon Feb 13 04:01:11 PST 2012


http://llvm.org/bugs/show_bug.cgi?id=11993

             Bug #: 11993
           Summary: call to function 'intrusive_ptr_release' that is
                    neither visible
           Product: clang
           Version: trunk
          Platform: PC
        OS/Version: Linux
            Status: NEW
          Severity: enhancement
          Priority: P
         Component: Static Analyzer
        AssignedTo: kremenek at apple.com
        ReportedBy: llvm at dpinol.com
                CC: llvmbugs at cs.uiuc.edu
    Classification: Unclassified


Hi,
I get this error whenevey I use boost intrusive_ptr_release. I attach
precompiled source code. 
I use clang trunk revision 150372.

In file included from
/home/dani/branches_svn/2.50_BASAR/robot/sources/src/device/oclController/CAN2/CanBlockingRead.cpp:1:
In file included from /opt/orocos-rtt/include/rtt/TaskContext.hpp:42:
In file included from /opt/orocos-rtt/include/rtt/AttributeRepository.hpp:44:
In file included from /opt/orocos-rtt/include/rtt/Attribute.hpp:42:
In file included from /opt/orocos-rtt/include/rtt/DataSource.hpp:47:
In file included from /opt/orocos-rtt/include/rtt/DataSourceBase.hpp:43:
In file included from /usr/include/boost/intrusive_ptr.hpp:16:
/usr/include/boost/smart_ptr/intrusive_ptr.hpp:101:23: error: call to function
'intrusive_ptr_release' that is neither visible in the template definition nor
found by argument-dependent lookup
        if( px != 0 ) intrusive_ptr_release( px );
                      ^
/opt/orocos-rtt/include/rtt/AttributeBase.hpp:83:20: note: in instantiation of
member function 'boost::intrusive_ptr<RTT::DataSourceBase>::~intrusive_ptr'
requested here
            return this->getDataSource();
                   ^
/opt/orocos-rtt/include/rtt/DataSourceBase.hpp:287:14: note:
'intrusive_ptr_release' should be declared prior to the call site or in
namespace 'RTT'
RTT_API void intrusive_ptr_release(const RTT::DataSourceBase* p );
             ^
In file included from
/home/dani/branches_svn/2.50_BASAR/robot/sources/src/device/oclController/CAN2/CanBlockingRead.cpp:1:
In file included from /opt/orocos-rtt/include/rtt/TaskContext.hpp:42:
In file included from /opt/orocos-rtt/include/rtt/AttributeRepository.hpp:44:
In file included from /opt/orocos-rtt/include/rtt/Attribute.hpp:42:
In file included from /opt/orocos-rtt/include/rtt/DataSource.hpp:47:
In file included from /opt/orocos-rtt/include/rtt/DataSourceBase.hpp:43:
In file included from /usr/include/boost/intrusive_ptr.hpp:16:
/usr/include/boost/smart_ptr/intrusive_ptr.hpp:96:23: error: call to function
'intrusive_ptr_add_ref' that is neither visible in the template definition nor
found by argument-dependent lookup
        if( px != 0 ) intrusive_ptr_add_ref( px );
                      ^
/opt/orocos-rtt/include/rtt/Types.hpp:86:20: note: in instantiation of member
function 'boost::intrusive_ptr<RTT::DataSourceBase>::intrusive_ptr' requested
here
            return DataSourceBase::shared_ptr();
                   ^
/opt/orocos-rtt/include/rtt/DataSourceBase.hpp:286:14: note:
'intrusive_ptr_add_ref' should be declared prior to the call site or in
namespace 'RTT'
RTT_API void intrusive_ptr_add_ref(const RTT::DataSourceBase* p );
             ^
2 errors generated.

-- 
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.



More information about the llvm-bugs mailing list