Missing NNS qualification in ElaboratedType.


In the generated AST for the following program fragment:
namespace N {
   struct S {};

N::S s1;
struct N::S s2;

the global variable 's1' has QualifiedNameType (as expected).
In contrast, the global variable 's2' has ElaboratedType (good, so far) that contains a plain CXXRecordType (bad, the NNS qualification is missing).

The attached simple patch fixes this problem by making sure that the ElaboratedType will contain a QualifiedNameType. The patch also changes the expected output of a single test, since the generated diagnostic now contains a NNS qualification.

Enea Zaffanella.

Elaborated_Qualified.patch (1.08 KB)

Good catch, thanks! Committed as r102065.

  - Doug