- 
    Bug 
- 
    Resolution: Done
- 
    P3: Somewhat important 
- 
    Qt Creator 2.7.0, Qt Creator 2.8.0-beta
- 
        783ec18424289301bdf598e9a19dfb55f0847be9
Consider the following code
template<typename T>
T* smart() { return 0; }
struct A
{
    int a;
};
void foo()
{
    smart<A>()->a;
    A* ai = smart<A>();
    (void)ai->a;
}
Creator doesn't realize in the first statement in foo() that the the lower case "a" is a reference to the a member in the A class. If you take a copy of the A pointer returned then it does figure it out though as seen in the second and third statement.