Developer forums (C::B DEVELOPMENT STRICTLY!) > CodeCompletion redesign

Typedefs of templated classes

(1/2) > >>

childinsilence:
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:


--- Code: ---typedef basic_path< std::wstring, wpath_traits > wpath;
--- End code ---

Here is an example:


--- Code: ---#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;
}
--- End code ---

As in the comment. On 10.05 the find declaration command of the current release detects wpath.

Greets

EDIT: It's revision 6650.

Loaden:
Fixed! thanks!!

childinsilence:
You're welcome.

Another example. Maybe another bug. Again boost 1.40 on Ubuntu 10.04 with revision 6650:


--- Code: ---#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;
}

--- End code ---

Cc returns a list of all symbols of boost::shared_ptr, but not m_dummy on the "->" operator. The dot operator does the right.


--- Code: ---template<typename T> class shared_ptr;
--- End code ---

Cheers!

childinsilence:
Applied the patch and found wpath. Thank you. Still didn't found m_dummy.

Loaden:

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

--- End quote ---
I will look into it. :)

Navigation

[0] Message Index

[#] Next page

Go to full version