I tried the branch on Ubuntu 10.04 with boost 1.40. On my system (don't know if it should work) the cc fails to detect boost filesystems wpath. This is a typedef of a templated class:
typedef basic_path< std::wstring, wpath_traits > wpath;
Here is an example:
#include <boost/filesystem.hpp>
namespace bfs = boost::filesystem;
int main(void)
{
boost::filesystem::wpath a; // not detected by cc, but "Find declaration of: wpath" hits the right line on 10.05.
bfs::wpath b; // not detected by cc
return 0;
}
As in the comment. On 10.05 the find declaration command of the current release detects wpath.
Greets
EDIT: It's revision 6650.
Fixed! thanks!!
You're welcome.
Another example. Maybe another bug. Again boost 1.40 on Ubuntu 10.04 with revision 6650:
#include <boost/shared_ptr.hpp>
class Dummy
{
Dummy();
int m_dummy;
};
typedef boost::shared_ptr<Dummy> DummyPtr;
int main(void)
{
DummyPtr ptrDummy = DummyPtr(new Dummy());
ptrDummy->m_dummy; // Does not work. Shows members of boost::shared_ptr instead of Dummy.
ptrDummy.get(); // Does the right.
return 0;
}
Cc returns a list of all symbols of boost::shared_ptr, but not m_dummy on the "->" operator. The dot operator does the right.
template<typename T> class shared_ptr;
Cheers!
Applied the patch and found wpath. Thank you. Still didn't found m_dummy.
Quote from: childinsilence on September 29, 2010, 10:58:58 AM
Applied the patch and found wpath. Thank you. Still didn't found m_dummy.
I will look into it. :)
Quote from: childinsilence on September 28, 2010, 05:00:26 PM
You're welcome.
Another example. Maybe another bug. Again boost 1.40 on Ubuntu 10.04 with revision 6650:
#include <boost/shared_ptr.hpp>
class Dummy
{
Dummy();
int m_dummy;
};
typedef boost::shared_ptr<Dummy> DummyPtr;
int main(void)
{
DummyPtr ptrDummy = DummyPtr(new Dummy());
ptrDummy->m_dummy; // Does not work. Shows members of boost::shared_ptr instead of Dummy.
ptrDummy.get(); // Does the right.
return 0;
}
Cc returns a list of all symbols of boost::shared_ptr, but not m_dummy on the "->" operator. The dot operator does the right.
template<typename T> class shared_ptr;
Cheers!
should be fixed in the next nightly build 8)
"ptrDummy->m_dummy" isn't fixed in rev. 6701, which subsequents nightly build of rev. 6688.
May this be a consequence of overloading the "->" operator in boost::shared_ptr?
Quote from: childinsilence on October 11, 2010, 09:41:56 AM
May this be a consequence of overloading the "->" operator in boost::shared_ptr?
I think for this reason Codecombletion does not work for the IBPP
http://forums.next.codeblocks.org/index.php/topic,13338.msg90045.html#msg90045 (http://forums.next.codeblocks.org/index.php/topic,13338.msg90045.html#msg90045)
Quote from: childinsilence on October 11, 2010, 09:41:56 AM
"ptrDummy->m_dummy" isn't fixed in rev. 6701, which subsequents nightly build of rev. 6688.
May this be a consequence of overloading the "->" operator in boost::shared_ptr?
Isn't fixed in 6906.