diff --git a/dsymbol/src/dsymbol/conversion/package.d b/dsymbol/src/dsymbol/conversion/package.d index 8477ed3..5c40475 100644 --- a/dsymbol/src/dsymbol/conversion/package.d +++ b/dsymbol/src/dsymbol/conversion/package.d @@ -51,6 +51,7 @@ ScopeSymbolPair generateAutocompleteTrees(const(Token)[] tokens, void tryResolve(Scope* sc, ref ModuleCache cache) { + if (sc is null) return; auto symbols = sc.symbols; foreach (item; symbols) { @@ -77,6 +78,7 @@ ScopeSymbolPair generateAutocompleteTrees(const(Token)[] tokens, } else { + if (part.symbolFile == "stdin") return; auto moduleSymbol = cache.getModuleSymbol(part.symbolFile); auto first = moduleSymbol.getFirstPartNamed(typeName); if (first !is null) diff --git a/dsymbol/src/dsymbol/conversion/second.d b/dsymbol/src/dsymbol/conversion/second.d index c0082e2..062ae05 100644 --- a/dsymbol/src/dsymbol/conversion/second.d +++ b/dsymbol/src/dsymbol/conversion/second.d @@ -247,7 +247,8 @@ do else { // store the callTip, that'll be useful to resolve the type later - symbol.callTip = istring(part); + if (symbol.callTip is null) + symbol.callTip = istring(part); return; } }