See example below, look for "PROBLEM:"
This issue occurs on 26.0.1 Linux x64.
namespace some_namespace
{
class SomeContext
{
public:
template <class T> T* create(void* ptr, long long identifier = 0)
{
T* valToReturn = nullptr;
return valToReturn;
}
}
class SomeContext : public some_namespace::SomeContext
{
public:
int xelem1;
int xelem2;
}
}
};
using namespace some_namespace;
class ClassName2
{
public:
int elem1;
int elem2;
};
void somefunc(SomeContext& someContextObj)
{
auto createdObj = someContextObj.create<ClassName2>(nullptr, 0);
// PROBLEM:
// Using "Preview" window on createdObj below shows that SlickEdit
// thinks the type of "createdObj" is someContextObj.create<ClassName2>( nullptr, 0 )
// but this is not correct. The type of createdObj should be "ClassName2 *"
// Also doing -> after createdObj doesn't autolist, probably related to the
// type of createdObj not getting properly determined.
createdObj->;
}