diff --git a/uppsrc/ide/Browser/Base.cpp b/uppsrc/ide/Browser/Base.cpp index b56cfb2a0..5ef3c52ab 100644 --- a/uppsrc/ide/Browser/Base.cpp +++ b/uppsrc/ide/Browser/Base.cpp @@ -336,7 +336,7 @@ void ParseSrc(Stream& in, int file, Callback2 error) else { cpp.Preprocess(path, in, GetMasterFile(GetSourceFilePath(file))); filetype = decode(ext, ".h", FILE_H, ".hpp", FILE_HPP, - ".cpp",FILE_CPP, ".c", FILE_C, FILE_OTHER); + ".cpp", FILE_CPP, ".icpp", FILE_CPP, ".c", FILE_C, FILE_OTHER); StringStream pin(cpp.output); Parser p; p.Do(pin, CodeBase(), file, filetype, GetFileName(path), error, Vector(), diff --git a/uppsrc/ide/Cpp.cpp b/uppsrc/ide/Cpp.cpp index 54f6e15f7..7457b9abb 100644 --- a/uppsrc/ide/Cpp.cpp +++ b/uppsrc/ide/Cpp.cpp @@ -187,6 +187,8 @@ void AssistEditor::ExpressionType(const String& ttype, const String& usings, String type = ParseTemplatedType(ttype, tparam); int c0 = typeset.GetCount(); const Array& n = GetTypeItems(type); + LDUMP(type); + LDUMP(tparam); for(int i = 0; i < n.GetCount(); i++) if(n[i].kind == TYPEDEF) { ExpressionType(n[i].qtype, usings, xp, ii, typeset, variable, can_shortcut_operator, visited_bases, lvl + 1);