diff --git a/src/Compilers/CSharp/Portable/CSharpResources.resx b/src/Compilers/CSharp/Portable/CSharpResources.resx index 7b62be7fff4c2..46dd147185689 100644 --- a/src/Compilers/CSharp/Portable/CSharpResources.resx +++ b/src/Compilers/CSharp/Portable/CSharpResources.resx @@ -6091,4 +6091,7 @@ To remove the warning, you can use /reference instead (set the Embed Interop Typ Module initializer method '{0}' must return void + + A module initializer must be an ordinary method + \ No newline at end of file diff --git a/src/Compilers/CSharp/Portable/Errors/ErrorCode.cs b/src/Compilers/CSharp/Portable/Errors/ErrorCode.cs index eaa1cf4e421ca..19d0e8e343f13 100644 --- a/src/Compilers/CSharp/Portable/Errors/ErrorCode.cs +++ b/src/Compilers/CSharp/Portable/Errors/ErrorCode.cs @@ -1777,12 +1777,13 @@ internal enum ErrorCode ERR_ExpressionTreeContainsFromEndIndexExpression = 8791, ERR_ExpressionTreeContainsRangeExpression = 8792, - ERR_ModuleInitializerMethodMustBeAccessibleOutsideTopLevelType = 8793, - ERR_ModuleInitializerMethodMustBeStatic = 8794, - ERR_ModuleInitializerMethodMustNotHaveParameters = 8795, - ERR_ModuleInitializerMethodMustReturnVoid = 8796, - ERR_ModuleInitializerMethodMustNotBeGeneric = 8797, - ERR_ModuleInitializerMethodMustNotBeContainedInGenericType = 8798, + ERR_ModuleInitializerMethodMustBeOrdinary = 8793, + ERR_ModuleInitializerMethodMustBeAccessibleOutsideTopLevelType = 8794, + ERR_ModuleInitializerMethodMustBeStatic = 8795, + ERR_ModuleInitializerMethodMustNotHaveParameters = 8796, + ERR_ModuleInitializerMethodMustReturnVoid = 8797, + ERR_ModuleInitializerMethodMustNotBeGeneric = 8798, + ERR_ModuleInitializerMethodMustNotBeContainedInGenericType = 8799, // Note: you will need to re-generate compiler code after adding warnings (eng\generate-compiler-code.cmd) } diff --git a/src/Compilers/CSharp/Portable/xlf/CSharpResources.cs.xlf b/src/Compilers/CSharp/Portable/xlf/CSharpResources.cs.xlf index e84a98d432b1e..41d62413778e3 100644 --- a/src/Compilers/CSharp/Portable/xlf/CSharpResources.cs.xlf +++ b/src/Compilers/CSharp/Portable/xlf/CSharpResources.cs.xlf @@ -332,6 +332,11 @@ Module initializer method '{0}' must be accessible outside top-level type '{1}' + + A module initializer must be an ordinary method + A module initializer must be an ordinary method + + Module initializer method '{0}' must be static Module initializer method '{0}' must be static diff --git a/src/Compilers/CSharp/Portable/xlf/CSharpResources.de.xlf b/src/Compilers/CSharp/Portable/xlf/CSharpResources.de.xlf index c74368669ef99..26fe59f368cd4 100644 --- a/src/Compilers/CSharp/Portable/xlf/CSharpResources.de.xlf +++ b/src/Compilers/CSharp/Portable/xlf/CSharpResources.de.xlf @@ -332,6 +332,11 @@ Module initializer method '{0}' must be accessible outside top-level type '{1}' + + A module initializer must be an ordinary method + A module initializer must be an ordinary method + + Module initializer method '{0}' must be static Module initializer method '{0}' must be static diff --git a/src/Compilers/CSharp/Portable/xlf/CSharpResources.es.xlf b/src/Compilers/CSharp/Portable/xlf/CSharpResources.es.xlf index ee3174833d6a8..7e77b08dbef5a 100644 --- a/src/Compilers/CSharp/Portable/xlf/CSharpResources.es.xlf +++ b/src/Compilers/CSharp/Portable/xlf/CSharpResources.es.xlf @@ -332,6 +332,11 @@ Module initializer method '{0}' must be accessible outside top-level type '{1}' + + A module initializer must be an ordinary method + A module initializer must be an ordinary method + + Module initializer method '{0}' must be static Module initializer method '{0}' must be static diff --git a/src/Compilers/CSharp/Portable/xlf/CSharpResources.fr.xlf b/src/Compilers/CSharp/Portable/xlf/CSharpResources.fr.xlf index aec20901723d3..7415b8d5c93a2 100644 --- a/src/Compilers/CSharp/Portable/xlf/CSharpResources.fr.xlf +++ b/src/Compilers/CSharp/Portable/xlf/CSharpResources.fr.xlf @@ -332,6 +332,11 @@ Module initializer method '{0}' must be accessible outside top-level type '{1}' + + A module initializer must be an ordinary method + A module initializer must be an ordinary method + + Module initializer method '{0}' must be static Module initializer method '{0}' must be static diff --git a/src/Compilers/CSharp/Portable/xlf/CSharpResources.it.xlf b/src/Compilers/CSharp/Portable/xlf/CSharpResources.it.xlf index ab59a561ba07c..84b2b31c43916 100644 --- a/src/Compilers/CSharp/Portable/xlf/CSharpResources.it.xlf +++ b/src/Compilers/CSharp/Portable/xlf/CSharpResources.it.xlf @@ -332,6 +332,11 @@ Module initializer method '{0}' must be accessible outside top-level type '{1}' + + A module initializer must be an ordinary method + A module initializer must be an ordinary method + + Module initializer method '{0}' must be static Module initializer method '{0}' must be static diff --git a/src/Compilers/CSharp/Portable/xlf/CSharpResources.ja.xlf b/src/Compilers/CSharp/Portable/xlf/CSharpResources.ja.xlf index 7c61feacb59c3..ada6a7f816cf0 100644 --- a/src/Compilers/CSharp/Portable/xlf/CSharpResources.ja.xlf +++ b/src/Compilers/CSharp/Portable/xlf/CSharpResources.ja.xlf @@ -332,6 +332,11 @@ Module initializer method '{0}' must be accessible outside top-level type '{1}' + + A module initializer must be an ordinary method + A module initializer must be an ordinary method + + Module initializer method '{0}' must be static Module initializer method '{0}' must be static diff --git a/src/Compilers/CSharp/Portable/xlf/CSharpResources.ko.xlf b/src/Compilers/CSharp/Portable/xlf/CSharpResources.ko.xlf index 86d2392527d57..11f0bf2c953ac 100644 --- a/src/Compilers/CSharp/Portable/xlf/CSharpResources.ko.xlf +++ b/src/Compilers/CSharp/Portable/xlf/CSharpResources.ko.xlf @@ -332,6 +332,11 @@ Module initializer method '{0}' must be accessible outside top-level type '{1}' + + A module initializer must be an ordinary method + A module initializer must be an ordinary method + + Module initializer method '{0}' must be static Module initializer method '{0}' must be static diff --git a/src/Compilers/CSharp/Portable/xlf/CSharpResources.pl.xlf b/src/Compilers/CSharp/Portable/xlf/CSharpResources.pl.xlf index 5f149de6a7a7e..afbe60e014ac1 100644 --- a/src/Compilers/CSharp/Portable/xlf/CSharpResources.pl.xlf +++ b/src/Compilers/CSharp/Portable/xlf/CSharpResources.pl.xlf @@ -332,6 +332,11 @@ Module initializer method '{0}' must be accessible outside top-level type '{1}' + + A module initializer must be an ordinary method + A module initializer must be an ordinary method + + Module initializer method '{0}' must be static Module initializer method '{0}' must be static diff --git a/src/Compilers/CSharp/Portable/xlf/CSharpResources.pt-BR.xlf b/src/Compilers/CSharp/Portable/xlf/CSharpResources.pt-BR.xlf index ec3655b069639..8820d3a259e29 100644 --- a/src/Compilers/CSharp/Portable/xlf/CSharpResources.pt-BR.xlf +++ b/src/Compilers/CSharp/Portable/xlf/CSharpResources.pt-BR.xlf @@ -332,6 +332,11 @@ Module initializer method '{0}' must be accessible outside top-level type '{1}' + + A module initializer must be an ordinary method + A module initializer must be an ordinary method + + Module initializer method '{0}' must be static Module initializer method '{0}' must be static diff --git a/src/Compilers/CSharp/Portable/xlf/CSharpResources.ru.xlf b/src/Compilers/CSharp/Portable/xlf/CSharpResources.ru.xlf index 94f6fe1d13a2e..ee071dd5fc2c5 100644 --- a/src/Compilers/CSharp/Portable/xlf/CSharpResources.ru.xlf +++ b/src/Compilers/CSharp/Portable/xlf/CSharpResources.ru.xlf @@ -332,6 +332,11 @@ Module initializer method '{0}' must be accessible outside top-level type '{1}' + + A module initializer must be an ordinary method + A module initializer must be an ordinary method + + Module initializer method '{0}' must be static Module initializer method '{0}' must be static diff --git a/src/Compilers/CSharp/Portable/xlf/CSharpResources.tr.xlf b/src/Compilers/CSharp/Portable/xlf/CSharpResources.tr.xlf index 71b49b334e966..3cb970c35ea91 100644 --- a/src/Compilers/CSharp/Portable/xlf/CSharpResources.tr.xlf +++ b/src/Compilers/CSharp/Portable/xlf/CSharpResources.tr.xlf @@ -332,6 +332,11 @@ Module initializer method '{0}' must be accessible outside top-level type '{1}' + + A module initializer must be an ordinary method + A module initializer must be an ordinary method + + Module initializer method '{0}' must be static Module initializer method '{0}' must be static diff --git a/src/Compilers/CSharp/Portable/xlf/CSharpResources.zh-Hans.xlf b/src/Compilers/CSharp/Portable/xlf/CSharpResources.zh-Hans.xlf index ef964491c2c77..8cd2d4c2992f1 100644 --- a/src/Compilers/CSharp/Portable/xlf/CSharpResources.zh-Hans.xlf +++ b/src/Compilers/CSharp/Portable/xlf/CSharpResources.zh-Hans.xlf @@ -332,6 +332,11 @@ Module initializer method '{0}' must be accessible outside top-level type '{1}' + + A module initializer must be an ordinary method + A module initializer must be an ordinary method + + Module initializer method '{0}' must be static Module initializer method '{0}' must be static diff --git a/src/Compilers/CSharp/Portable/xlf/CSharpResources.zh-Hant.xlf b/src/Compilers/CSharp/Portable/xlf/CSharpResources.zh-Hant.xlf index 11f9625edc55b..d762f8d0b0f85 100644 --- a/src/Compilers/CSharp/Portable/xlf/CSharpResources.zh-Hant.xlf +++ b/src/Compilers/CSharp/Portable/xlf/CSharpResources.zh-Hant.xlf @@ -332,6 +332,11 @@ Module initializer method '{0}' must be accessible outside top-level type '{1}' + + A module initializer must be an ordinary method + A module initializer must be an ordinary method + + Module initializer method '{0}' must be static Module initializer method '{0}' must be static diff --git a/src/Compilers/CSharp/Test/Symbol/Symbols/ModuleInitializersTests.Accessibility.cs b/src/Compilers/CSharp/Test/Symbol/Symbols/ModuleInitializersTests.Accessibility.cs index bdcd35157edd5..11d01bc0317b3 100644 --- a/src/Compilers/CSharp/Test/Symbol/Symbols/ModuleInitializersTests.Accessibility.cs +++ b/src/Compilers/CSharp/Test/Symbol/Symbols/ModuleInitializersTests.Accessibility.cs @@ -24,7 +24,7 @@ namespace System.Runtime.CompilerServices { class ModuleInitializerAttribute : S "; var compilation = CreateCompilation(source, parseOptions: s_parseOptions); compilation.VerifyDiagnostics( - // (6,6): error CS8793: Module initializer method 'M' must be accessible outside top-level type 'C' + // (6,6): error CS8794: Module initializer method 'M' must be accessible outside top-level type 'C' // [ModuleInitializer] Diagnostic(ErrorCode.ERR_ModuleInitializerMethodMustBeAccessibleOutsideTopLevelType, "ModuleInitializer").WithArguments("M", "C").WithLocation(6, 6) ); @@ -46,7 +46,7 @@ namespace System.Runtime.CompilerServices { class ModuleInitializerAttribute : S "; var compilation = CreateCompilation(source, parseOptions: s_parseOptions); compilation.VerifyDiagnostics( - // (6,6): error CS8793: Module initializer method 'M' must be accessible outside top-level type 'C' + // (6,6): error CS8794: Module initializer method 'M' must be accessible outside top-level type 'C' // [ModuleInitializer] Diagnostic(ErrorCode.ERR_ModuleInitializerMethodMustBeAccessibleOutsideTopLevelType, "ModuleInitializer").WithArguments("M", "C").WithLocation(6, 6) ); @@ -68,7 +68,7 @@ namespace System.Runtime.CompilerServices { class ModuleInitializerAttribute : S "; var compilation = CreateCompilation(source, parseOptions: s_parseOptions); compilation.VerifyDiagnostics( - // (6,6): error CS8793: Module initializer method 'M' must be accessible outside top-level type 'C' + // (6,6): error CS8794: Module initializer method 'M' must be accessible outside top-level type 'C' // [ModuleInitializer] Diagnostic(ErrorCode.ERR_ModuleInitializerMethodMustBeAccessibleOutsideTopLevelType, "ModuleInitializer").WithArguments("M", "C").WithLocation(6, 6) ); @@ -183,7 +183,7 @@ namespace System.Runtime.CompilerServices { class ModuleInitializerAttribute : S "; var compilation = CreateCompilation(source, parseOptions: s_parseOptions); compilation.VerifyDiagnostics( - // (8,10): error CS8793: Module initializer method 'M' must be accessible outside top-level type 'C' + // (8,10): error CS8794: Module initializer method 'M' must be accessible outside top-level type 'C' // [ModuleInitializer] Diagnostic(ErrorCode.ERR_ModuleInitializerMethodMustBeAccessibleOutsideTopLevelType, "ModuleInitializer").WithArguments("M", "C").WithLocation(8, 10) ); @@ -208,7 +208,7 @@ namespace System.Runtime.CompilerServices { class ModuleInitializerAttribute : S "; var compilation = CreateCompilation(source, parseOptions: s_parseOptions); compilation.VerifyDiagnostics( - // (8,10): error CS8793: Module initializer method 'M' must be accessible outside top-level type 'C' + // (8,10): error CS8794: Module initializer method 'M' must be accessible outside top-level type 'C' // [ModuleInitializer] Diagnostic(ErrorCode.ERR_ModuleInitializerMethodMustBeAccessibleOutsideTopLevelType, "ModuleInitializer").WithArguments("M", "C").WithLocation(8, 10) ); @@ -233,7 +233,7 @@ namespace System.Runtime.CompilerServices { class ModuleInitializerAttribute : S "; var compilation = CreateCompilation(source, parseOptions: s_parseOptions); compilation.VerifyDiagnostics( - // (8,10): error CS8793: Module initializer method 'M' must be accessible outside top-level type 'C' + // (8,10): error CS8794: Module initializer method 'M' must be accessible outside top-level type 'C' // [ModuleInitializer] Diagnostic(ErrorCode.ERR_ModuleInitializerMethodMustBeAccessibleOutsideTopLevelType, "ModuleInitializer").WithArguments("M", "C").WithLocation(8, 10) ); diff --git a/src/Compilers/CSharp/Test/Symbol/Symbols/ModuleInitializersTests.Generics.cs b/src/Compilers/CSharp/Test/Symbol/Symbols/ModuleInitializersTests.Generics.cs index 5d29a5b2610a3..9ae63b710e85b 100644 --- a/src/Compilers/CSharp/Test/Symbol/Symbols/ModuleInitializersTests.Generics.cs +++ b/src/Compilers/CSharp/Test/Symbol/Symbols/ModuleInitializersTests.Generics.cs @@ -24,7 +24,7 @@ namespace System.Runtime.CompilerServices { class ModuleInitializerAttribute : S "; var compilation = CreateCompilation(source, parseOptions: s_parseOptions); compilation.VerifyDiagnostics( - // (6,6): error CS8797: Module initializer method 'M' must not have generic parameters + // (6,6): error CS8798: Module initializer method 'M' must not have generic parameters // [ModuleInitializer] Diagnostic(ErrorCode.ERR_ModuleInitializerMethodMustNotBeGeneric, "ModuleInitializer").WithArguments("M").WithLocation(6, 6) ); @@ -46,7 +46,7 @@ namespace System.Runtime.CompilerServices { class ModuleInitializerAttribute : S "; var compilation = CreateCompilation(source, parseOptions: s_parseOptions); compilation.VerifyDiagnostics( - // (6,6): error CS8797: Module initializer method 'M' must not be contained in a generic type + // (6,6): error CS8798: Module initializer method 'M' must not be contained in a generic type // [ModuleInitializer] Diagnostic(ErrorCode.ERR_ModuleInitializerMethodMustNotBeContainedInGenericType, "ModuleInitializer").WithArguments("M").WithLocation(6, 6) ); @@ -71,7 +71,7 @@ namespace System.Runtime.CompilerServices { class ModuleInitializerAttribute : S "; var compilation = CreateCompilation(source, parseOptions: s_parseOptions); compilation.VerifyDiagnostics( - // (8,10): error CS8798: Module initializer method 'M' must not be contained in a generic type + // (8,10): error CS8799: Module initializer method 'M' must not be contained in a generic type // [ModuleInitializer] Diagnostic(ErrorCode.ERR_ModuleInitializerMethodMustNotBeContainedInGenericType, "ModuleInitializer").WithArguments("M").WithLocation(8, 10) ); diff --git a/src/Compilers/CSharp/Test/Symbol/Symbols/ModuleInitializersTests.Signature.cs b/src/Compilers/CSharp/Test/Symbol/Symbols/ModuleInitializersTests.Signature.cs index 49a27bae97a7b..71913d276366f 100644 --- a/src/Compilers/CSharp/Test/Symbol/Symbols/ModuleInitializersTests.Signature.cs +++ b/src/Compilers/CSharp/Test/Symbol/Symbols/ModuleInitializersTests.Signature.cs @@ -24,7 +24,7 @@ namespace System.Runtime.CompilerServices { class ModuleInitializerAttribute : S "; var compilation = CreateCompilation(source, parseOptions: s_parseOptions); compilation.VerifyDiagnostics( - // (6,6): error CS8794: Module initializer method 'M' must be static + // (6,6): error CS8795: Module initializer method 'M' must be static // [ModuleInitializer] Diagnostic(ErrorCode.ERR_ModuleInitializerMethodMustBeStatic, "ModuleInitializer").WithArguments("M").WithLocation(6, 6) ); @@ -46,7 +46,7 @@ namespace System.Runtime.CompilerServices { class ModuleInitializerAttribute : S "; var compilation = CreateCompilation(source, parseOptions: s_parseOptions); compilation.VerifyDiagnostics( - // (6,6): error CS8795: Module initializer method 'M' must not have parameters + // (6,6): error CS8796: Module initializer method 'M' must not have parameters // [ModuleInitializer] Diagnostic(ErrorCode.ERR_ModuleInitializerMethodMustNotHaveParameters, "ModuleInitializer").WithArguments("M").WithLocation(6, 6) ); @@ -68,7 +68,7 @@ namespace System.Runtime.CompilerServices { class ModuleInitializerAttribute : S "; var compilation = CreateCompilation(source, parseOptions: s_parseOptions); compilation.VerifyDiagnostics( - // (6,6): error CS8795: Module initializer method 'M' must not have parameters + // (6,6): error CS8796: Module initializer method 'M' must not have parameters // [ModuleInitializer] Diagnostic(ErrorCode.ERR_ModuleInitializerMethodMustNotHaveParameters, "ModuleInitializer").WithArguments("M").WithLocation(6, 6) ); @@ -90,7 +90,7 @@ namespace System.Runtime.CompilerServices { class ModuleInitializerAttribute : S "; var compilation = CreateCompilation(source, parseOptions: s_parseOptions); compilation.VerifyDiagnostics( - // (6,6): error CS8795: Module initializer method 'M' must not have parameters + // (6,6): error CS8796: Module initializer method 'M' must not have parameters // [ModuleInitializer] Diagnostic(ErrorCode.ERR_ModuleInitializerMethodMustNotHaveParameters, "ModuleInitializer").WithArguments("M").WithLocation(6, 6) ); @@ -112,7 +112,7 @@ namespace System.Runtime.CompilerServices { class ModuleInitializerAttribute : S "; var compilation = CreateCompilation(source, parseOptions: s_parseOptions); compilation.VerifyDiagnostics( - // (6,6): error CS8796: Module initializer method 'M' must return void + // (6,6): error CS8797: Module initializer method 'M' must return void // [ModuleInitializer] Diagnostic(ErrorCode.ERR_ModuleInitializerMethodMustReturnVoid, "ModuleInitializer").WithArguments("M").WithLocation(6, 6) ); @@ -157,7 +157,7 @@ namespace System.Runtime.CompilerServices { class ModuleInitializerAttribute : S "; var compilation = CreateCompilation(source, parseOptions: s_parseOptions); compilation.VerifyDiagnostics( - // (7,6): error CS8796: Module initializer method 'M' must return void + // (7,6): error CS8797: Module initializer method 'M' must return void // [ModuleInitializer] Diagnostic(ErrorCode.ERR_ModuleInitializerMethodMustReturnVoid, "ModuleInitializer").WithArguments("M").WithLocation(7, 6), // (8,32): warning CS1998: This async method lacks 'await' operators and will run synchronously. Consider using the 'await' operator to await non-blocking API calls, or 'await Task.Run(...)' to do CPU-bound work on a background thread.