From 15e62a53354600dab5c242739028e18133a1617b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=91=D0=BE=D0=BD=D0=B4=D0=B0=D1=80=D0=B5=D0=B2=20=D0=98?= =?UTF-8?q?=D0=B2=D0=B0=D0=BD?= Date: Thu, 19 Apr 2018 21:05:47 +0200 Subject: [PATCH] bug fix #774 --- CodeCompletion/SymTable.cs | 8 +++++++- Libraries/ICSharpCode.TextEditor.dll | Bin 348160 -> 348160 bytes .../ParserTools/DefaultLanguageInformation.cs | 1 + TestSuite/intellisense_tests/generics7.pas | 3 +++ 4 files changed, 11 insertions(+), 1 deletion(-) create mode 100644 TestSuite/intellisense_tests/generics7.pas diff --git a/CodeCompletion/SymTable.cs b/CodeCompletion/SymTable.cs index b8505773b..bc0b0e271 100644 --- a/CodeCompletion/SymTable.cs +++ b/CodeCompletion/SymTable.cs @@ -6762,10 +6762,16 @@ namespace CodeCompletion //private CompiledScope ret_type; - public CompiledMethodScope(SymInfo si, MethodInfo mi, CompiledScope declaringType) + public CompiledMethodScope(SymInfo si, MethodInfo mi, TypeScope declaringType) { this.si = si; this.mi = mi; + if (declaringType == TypeTable.string_type && mi.GetParameters().Length >= 1 && mi.GetParameters()[0].ParameterType.Name == "IEnumerable`1") + { + List type_list = new List(); + type_list.Add(TypeTable.char_type); + declaringType = TypeTable.get_compiled_type(mi.GetParameters()[0].ParameterType.GetGenericTypeDefinition()).GetInstance(type_list); + } string[] args = declaringType.TemplateArguments; this.declaringType = declaringType; if (args != null) diff --git a/Libraries/ICSharpCode.TextEditor.dll b/Libraries/ICSharpCode.TextEditor.dll index 00cadd5292a12bc8e280a83b534eee56af72d287..70cdf46b4cf6240819765981f8b44c82704afbd4 100644 GIT binary patch delta 25072 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 diff --git a/ParserTools/ParserTools/DefaultLanguageInformation.cs b/ParserTools/ParserTools/DefaultLanguageInformation.cs index 4327802fc..6c24d6392 100644 --- a/ParserTools/ParserTools/DefaultLanguageInformation.cs +++ b/ParserTools/ParserTools/DefaultLanguageInformation.cs @@ -1836,6 +1836,7 @@ namespace PascalABCCompiler.Parsers } } } + else sb.Append(tt[i].Name); if (i < tt.Length - 1) sb.Append(','); diff --git a/TestSuite/intellisense_tests/generics7.pas b/TestSuite/intellisense_tests/generics7.pas new file mode 100644 index 000000000..bd560323b --- /dev/null +++ b/TestSuite/intellisense_tests/generics7.pas @@ -0,0 +1,3 @@ +begin + ''.Select{@(расширение sequence of T) function Select(selector: char->TResult): sequence of TResult;@}(x->Ord(x)); +end. \ No newline at end of file