diff --git a/src/Compiler/Checking/Expressions/CheckComputationExpressions.fs b/src/Compiler/Checking/Expressions/CheckComputationExpressions.fs index 040b61f9a89..876ea99e394 100644 --- a/src/Compiler/Checking/Expressions/CheckComputationExpressions.fs +++ b/src/Compiler/Checking/Expressions/CheckComputationExpressions.fs @@ -2129,14 +2129,6 @@ let rec TryTranslateComputationExpression translatedCtxt ) | _ -> - if not (cenv.g.langVersion.SupportsFeature LanguageFeature.AndBang) then - let andBangRange = - match andBangBindings with - | [] -> comp.Range - | h :: _ -> h.Trivia.LeadingKeyword.Range - - error (Error(FSComp.SR.tcAndBangNotSupported (), andBangRange)) - if ceenv.isQuery then error (Error(FSComp.SR.tcBindMayNotBeUsedInQueries (), mBind)) @@ -2684,11 +2676,7 @@ and TranslateComputationExpressionBind let innerRange = innerComp.Range - let innerCompReturn = - if ceenv.cenv.g.langVersion.SupportsFeature LanguageFeature.AndBang then - convertSimpleReturnToExpr ceenv comp varSpace innerComp - else - None + let innerCompReturn = convertSimpleReturnToExpr ceenv comp varSpace innerComp match innerCompReturn with | Some(innerExpr, customOpInfo) when hasBuilderMethod ceenv bindRange (bindName + "Return") -> diff --git a/src/Compiler/FSComp.txt b/src/Compiler/FSComp.txt index 26699fa4d9b..046e7486fc8 100644 --- a/src/Compiler/FSComp.txt +++ b/src/Compiler/FSComp.txt @@ -1545,7 +1545,6 @@ csTypeHasNullAsExtraValue,"The type '%s' supports 'null' but a non-null type is 3303,fromEndSlicingRequiresVFive,"The 'from the end slicing' feature requires language version 'preview'." 3304,poundiNotSupportedByRegisteredDependencyManagers,"#i is not supported by the registered PackageManagers" 3343,tcRequireMergeSourcesOrBindN,"The 'let! ... and! ...' construct may only be used if the computation expression builder defines either a '%s' method or appropriate 'MergeSources' and 'Bind' methods" -3344,tcAndBangNotSupported,"This feature is not supported in this version of F#. You may need to add /langversion:preview to use this feature." 3345,tcInvalidUseBangBindingNoAndBangs,"use! may not be combined with and!" 3349,chkFeatureNotSupportedInLibrary,"Feature '%s' requires the F# library for language version %s or greater." 3350,chkFeatureNotLanguageSupported,"Feature '%s' is not available in F# %s. Please use language version %s or greater." @@ -1573,7 +1572,6 @@ featureDotlessFloat32Literal,"dotless float32 literal" featurePackageManagement,"package management" featureFromEndSlicing,"from-end slicing" featureFixedIndexSlice3d4d,"fixed-index slice 3d/4d" -featureAndBang,"applicative computation expressions" featureNullnessChecking,"nullness checking" featureResumableStateMachines,"resumable state machines" featureNullableOptionalInterop,"nullable optional interop" diff --git a/src/Compiler/Facilities/LanguageFeatures.fs b/src/Compiler/Facilities/LanguageFeatures.fs index ad170712e4a..7c395c223e5 100644 --- a/src/Compiler/Facilities/LanguageFeatures.fs +++ b/src/Compiler/Facilities/LanguageFeatures.fs @@ -27,7 +27,6 @@ type LanguageFeature = | PackageManagement | FromEndSlicing | FixedIndexSlice3d4d - | AndBang | ResumableStateMachines | NullableOptionalInterop | DefaultInterfaceMemberConsumption @@ -160,7 +159,6 @@ type LanguageVersion(versionText, ?disabledFeaturesArray: LanguageFeature array) // F# 5.0 LanguageFeature.FixedIndexSlice3d4d, languageVersion50 LanguageFeature.DotlessFloat32Literal, languageVersion50 - LanguageFeature.AndBang, languageVersion50 LanguageFeature.NullableOptionalInterop, languageVersion50 LanguageFeature.DefaultInterfaceMemberConsumption, languageVersion50 LanguageFeature.OpenTypeDeclaration, languageVersion50 @@ -375,7 +373,6 @@ type LanguageVersion(versionText, ?disabledFeaturesArray: LanguageFeature array) | LanguageFeature.PackageManagement -> FSComp.SR.featurePackageManagement () | LanguageFeature.FromEndSlicing -> FSComp.SR.featureFromEndSlicing () | LanguageFeature.FixedIndexSlice3d4d -> FSComp.SR.featureFixedIndexSlice3d4d () - | LanguageFeature.AndBang -> FSComp.SR.featureAndBang () | LanguageFeature.NullnessChecking -> FSComp.SR.featureNullnessChecking () | LanguageFeature.ResumableStateMachines -> FSComp.SR.featureResumableStateMachines () | LanguageFeature.NullableOptionalInterop -> FSComp.SR.featureNullableOptionalInterop () diff --git a/src/Compiler/Facilities/LanguageFeatures.fsi b/src/Compiler/Facilities/LanguageFeatures.fsi index 8c7ebd7e3c3..977623a59cb 100644 --- a/src/Compiler/Facilities/LanguageFeatures.fsi +++ b/src/Compiler/Facilities/LanguageFeatures.fsi @@ -17,7 +17,6 @@ type LanguageFeature = | PackageManagement | FromEndSlicing | FixedIndexSlice3d4d - | AndBang | ResumableStateMachines | NullableOptionalInterop | DefaultInterfaceMemberConsumption diff --git a/src/Compiler/xlf/FSComp.txt.cs.xlf b/src/Compiler/xlf/FSComp.txt.cs.xlf index 8cb70b4c49e..c7f27d01322 100644 --- a/src/Compiler/xlf/FSComp.txt.cs.xlf +++ b/src/Compiler/xlf/FSComp.txt.cs.xlf @@ -302,11 +302,6 @@ Allow object expressions without overrides - - applicative computation expressions - aplikativní výpočetní výrazy - - Arithmetic and logical operations in literals, enum definitions and attributes Aritmetické a logické operace v literálech, definicích výčtu a atributech @@ -1437,11 +1432,6 @@ Tento výraz má typ {0} a je kompatibilní pouze s typem {1} prostřednictvím nejednoznačného implicitního převodu. Zvažte použití explicitního volání op_Implicit. Použitelnými implicitními převody jsou: {2} - - This feature is not supported in this version of F#. You may need to add /langversion:preview to use this feature. - Tato funkce se v této verzi jazyka F# nepodporuje. Abyste mohli tuto funkci používat, možná bude nutné přidat /langversion:preview. - - The field '{0}' appears multiple times in this record expression. Pole {0} se v tomto výrazu záznamu vyskytuje vícekrát. diff --git a/src/Compiler/xlf/FSComp.txt.de.xlf b/src/Compiler/xlf/FSComp.txt.de.xlf index 5686312be6b..7c58e294021 100644 --- a/src/Compiler/xlf/FSComp.txt.de.xlf +++ b/src/Compiler/xlf/FSComp.txt.de.xlf @@ -302,11 +302,6 @@ Allow object expressions without overrides - - applicative computation expressions - applikative Berechnungsausdrücke - - Arithmetic and logical operations in literals, enum definitions and attributes Arithmetische und logische Vorgänge in Literalen, Enumerationsdefinitionen und Attributen @@ -1437,11 +1432,6 @@ Dieser Ausdruck weist den Typ "{0}" auf und wird nur durch eine mehrdeutige implizite Konvertierung mit dem Typ "{1}" kompatibel gemacht. Erwägen Sie die Verwendung eines expliziten Aufrufs an "op_Implicit". Die anwendbaren impliziten Konvertierungen sind: {2} - - This feature is not supported in this version of F#. You may need to add /langversion:preview to use this feature. - Dieses Feature wird in dieser Version von F# nicht unterstützt. Möglicherweise müssen Sie "/langversion:preview" hinzufügen, um dieses Feature zu verwenden. - - The field '{0}' appears multiple times in this record expression. Das Feld "{0}" ist in diesem Datensatzausdruck mehrmals vorhanden. diff --git a/src/Compiler/xlf/FSComp.txt.es.xlf b/src/Compiler/xlf/FSComp.txt.es.xlf index a3b4cfce50b..61c5886a00c 100644 --- a/src/Compiler/xlf/FSComp.txt.es.xlf +++ b/src/Compiler/xlf/FSComp.txt.es.xlf @@ -302,11 +302,6 @@ Allow object expressions without overrides - - applicative computation expressions - expresiones de cálculo aplicativas - - Arithmetic and logical operations in literals, enum definitions and attributes Operaciones aritméticas y lógicas en literales, definiciones de enumeración y atributos @@ -1437,11 +1432,6 @@ Esta expresión tiene el tipo "{0}" y solo se hace compatible con el tipo "{1}" mediante una conversión implícita ambigua. Considere la posibilidad de usar una llamada explícita a 'op_Implicit'. Las conversiones implícitas aplicables son:{2} - - This feature is not supported in this version of F#. You may need to add /langversion:preview to use this feature. - Esta versión de F# no admite esta característica. Es posible que tenga que agregar /langversion:preview para usarla. - - The field '{0}' appears multiple times in this record expression. El campo "{0}" aparece varias veces en esta expresión de registro. diff --git a/src/Compiler/xlf/FSComp.txt.fr.xlf b/src/Compiler/xlf/FSComp.txt.fr.xlf index bf46f5ee12b..7ca8e88853d 100644 --- a/src/Compiler/xlf/FSComp.txt.fr.xlf +++ b/src/Compiler/xlf/FSComp.txt.fr.xlf @@ -302,11 +302,6 @@ Allow object expressions without overrides - - applicative computation expressions - expressions de calcul applicatives - - Arithmetic and logical operations in literals, enum definitions and attributes Opérations arithmétiques et logiques dans les littéraux, les définitions d'énumération et les attributs @@ -1437,11 +1432,6 @@ Cette expression a le type « {0} » et est uniquement compatible avec le type « {1} » via une conversion implicite ambiguë. Envisagez d’utiliser un appel explicite à’op_Implicit'. Les conversions implicites applicables sont : {2} - - This feature is not supported in this version of F#. You may need to add /langversion:preview to use this feature. - Cette fonctionnalité n'est pas prise en charge dans cette version de F#. Vous devrez peut-être ajouter /langversion:preview pour pouvoir utiliser cette fonctionnalité. - - The field '{0}' appears multiple times in this record expression. Le champ «{0}» apparaît plusieurs fois dans cette expression d’enregistrement. diff --git a/src/Compiler/xlf/FSComp.txt.it.xlf b/src/Compiler/xlf/FSComp.txt.it.xlf index 6d705cdc2d1..4534ba31abf 100644 --- a/src/Compiler/xlf/FSComp.txt.it.xlf +++ b/src/Compiler/xlf/FSComp.txt.it.xlf @@ -302,11 +302,6 @@ Allow object expressions without overrides - - applicative computation expressions - espressioni di calcolo applicativo - - Arithmetic and logical operations in literals, enum definitions and attributes Operazioni aritmetiche e logiche in valori letterali, definizioni di enumerazione e attributi @@ -1437,11 +1432,6 @@ Questa espressione di tipo '{0}' è resa compatibile con il tipo '{1}' solo tramite una conversione implicita ambigua. Provare a usare una chiamata esplicita a 'op_Implicit'. Le conversioni implicite applicabili sono: {2} - - This feature is not supported in this version of F#. You may need to add /langversion:preview to use this feature. - Questa funzionalità non è supportata in questa versione di F#. Per usare questa funzionalità, potrebbe essere necessario aggiungere /langversion:preview. - - The field '{0}' appears multiple times in this record expression. Il campo '{0}' viene visualizzato più volte in questa espressione di record. diff --git a/src/Compiler/xlf/FSComp.txt.ja.xlf b/src/Compiler/xlf/FSComp.txt.ja.xlf index 0b35b8e6dac..24554a591ca 100644 --- a/src/Compiler/xlf/FSComp.txt.ja.xlf +++ b/src/Compiler/xlf/FSComp.txt.ja.xlf @@ -302,11 +302,6 @@ Allow object expressions without overrides - - applicative computation expressions - 適用できる計算式 - - Arithmetic and logical operations in literals, enum definitions and attributes リテラル、列挙型の定義と属性の算術演算と論理演算 @@ -1437,11 +1432,6 @@ この式の型は '{0}' であり、あいまいで暗黙的な変換によってのみ、型 '{1}' と互換性を持たせることが可能です。' op_Implicit' の明示的な呼び出しを使用することを検討してください。該当する暗黙的な変換は次のとおりです: {2} - - This feature is not supported in this version of F#. You may need to add /langversion:preview to use this feature. - この機能は、このバージョンの F# ではサポートされていません。この機能を使用するには、/langversion:preview の追加が必要な場合があります。 - - The field '{0}' appears multiple times in this record expression. このレコード式に、フィールド '{0}' が複数回出現します。 diff --git a/src/Compiler/xlf/FSComp.txt.ko.xlf b/src/Compiler/xlf/FSComp.txt.ko.xlf index b00f54bfa76..314884ccaf0 100644 --- a/src/Compiler/xlf/FSComp.txt.ko.xlf +++ b/src/Compiler/xlf/FSComp.txt.ko.xlf @@ -302,11 +302,6 @@ Allow object expressions without overrides - - applicative computation expressions - 적용 가능한 계산 식 - - Arithmetic and logical operations in literals, enum definitions and attributes 리터럴, 열거형 정의 및 특성의 산술 연산 및 논리 연산 @@ -1437,11 +1432,6 @@ 이 식은 ‘{0}’ 형식이며 모호한 암시적 변환을 통해 ‘{1}’ 형식하고만 호환됩니다. ‘op_Implicit’에 대한 명시적 호출을 사용하십시오. 해당하는 암시적 변환은 ‘{2}’입니다. - - This feature is not supported in this version of F#. You may need to add /langversion:preview to use this feature. - 이 기능은 이 F# 버전에서 지원되지 않습니다. 이 기능을 사용하기 위해 /langversion:preview를 추가해야 할 수도 있습니다. - - The field '{0}' appears multiple times in this record expression. '{0}' 필드가 이 레코드 식에 여러 번 나타납니다. diff --git a/src/Compiler/xlf/FSComp.txt.pl.xlf b/src/Compiler/xlf/FSComp.txt.pl.xlf index b6d4b78a2d8..adad8ce7661 100644 --- a/src/Compiler/xlf/FSComp.txt.pl.xlf +++ b/src/Compiler/xlf/FSComp.txt.pl.xlf @@ -302,11 +302,6 @@ Allow object expressions without overrides - - applicative computation expressions - praktyczne wyrażenia obliczeniowe - - Arithmetic and logical operations in literals, enum definitions and attributes Operacje arytmetyczne i logiczne w literałach, definicjach wyliczeń i atrybutach @@ -1437,11 +1432,6 @@ To wyrażenie ma typ "{0}" i jest zgodne tylko z typem "{1}" za pośrednictwem niejednoznacznie bezwarunkowej konwersji. Rozważ użycie jednoznacznego wywołania elementu "op_Implicit". Odpowiednimi jednoznacznymi konwersjami są: {2} - - This feature is not supported in this version of F#. You may need to add /langversion:preview to use this feature. - Ta funkcja nie jest obsługiwana w tej wersji języka F#. Aby korzystać z tej funkcji, może być konieczne dodanie parametru /langversion:preview. - - The field '{0}' appears multiple times in this record expression. Pole „{0}” występuje wielokrotnie w tym wyrażeniu rekordu. diff --git a/src/Compiler/xlf/FSComp.txt.pt-BR.xlf b/src/Compiler/xlf/FSComp.txt.pt-BR.xlf index ba46752a529..83e5f797d41 100644 --- a/src/Compiler/xlf/FSComp.txt.pt-BR.xlf +++ b/src/Compiler/xlf/FSComp.txt.pt-BR.xlf @@ -302,11 +302,6 @@ Allow object expressions without overrides - - applicative computation expressions - expressões de computação aplicáveis - - Arithmetic and logical operations in literals, enum definitions and attributes Operações aritméticas e lógicas em literais, definições de enumeração e atributos @@ -1437,11 +1432,6 @@ Essa expressão possui o tipo '{0}' e só é compatível com o tipo '{1}' por uma conversão implícita ambígua. Considere usar uma chamada explícita para 'op_Implicit'. As conversões implícitas aplicáveis são:{2} - - This feature is not supported in this version of F#. You may need to add /langversion:preview to use this feature. - Este recurso não tem suporte nesta versão do F#. Talvez seja necessário adicionar /langversion:preview para usar este recurso. - - The field '{0}' appears multiple times in this record expression. O campo '{0}' aparece várias vezes nesta expressão de registro. diff --git a/src/Compiler/xlf/FSComp.txt.ru.xlf b/src/Compiler/xlf/FSComp.txt.ru.xlf index 4a13225bc33..9ffb86e4566 100644 --- a/src/Compiler/xlf/FSComp.txt.ru.xlf +++ b/src/Compiler/xlf/FSComp.txt.ru.xlf @@ -302,11 +302,6 @@ Allow object expressions without overrides - - applicative computation expressions - применимые вычислительные выражения - - Arithmetic and logical operations in literals, enum definitions and attributes Арифметические и логические операции в литералах, определениях перечислений и атрибутах @@ -1437,11 +1432,6 @@ Это выражение имеет тип "{0}" и совместимо только с типом "{1}" посредством неоднозначного неявного преобразования. Рассмотрите возможность использования явного вызова "op_Implicit". Применимые неявные преобразования: {2} - - This feature is not supported in this version of F#. You may need to add /langversion:preview to use this feature. - Эта функция не поддерживается в данной версии F#. Возможно, потребуется добавить/langversion:preview, чтобы использовать эту функцию. - - The field '{0}' appears multiple times in this record expression. Поле "{0}" появляется несколько раз в данном выражении записи. diff --git a/src/Compiler/xlf/FSComp.txt.tr.xlf b/src/Compiler/xlf/FSComp.txt.tr.xlf index 0d880a3f23a..39caee05fda 100644 --- a/src/Compiler/xlf/FSComp.txt.tr.xlf +++ b/src/Compiler/xlf/FSComp.txt.tr.xlf @@ -302,11 +302,6 @@ Allow object expressions without overrides - - applicative computation expressions - uygulama hesaplama ifadeleri - - Arithmetic and logical operations in literals, enum definitions and attributes Sabit değerler, sabit listesi tanımları ve öznitelikler olarak aritmetik ve mantıksal işlemler @@ -1437,11 +1432,6 @@ Bu ifade '{0}' türüne sahip ve yalnızca belirsiz bir örtük dönüştürme aracılığıyla ’{1}' türüyle uyumlu hale getirilir. 'op_Implicit' için açık bir çağrı kullanmayı düşünün. Uygulanabilir örtük dönüştürmeler şunlardır: {2} - - This feature is not supported in this version of F#. You may need to add /langversion:preview to use this feature. - Bu özellik, bu F# sürümünde desteklenmiyor. Bu özelliği kullanabilmeniz için /langversion:preview eklemeniz gerekebilir. - - The field '{0}' appears multiple times in this record expression. '{0}' alanı bu kayıt ifadesinde birden fazla yerde görünüyor. diff --git a/src/Compiler/xlf/FSComp.txt.zh-Hans.xlf b/src/Compiler/xlf/FSComp.txt.zh-Hans.xlf index ce2c173e893..d78ff923020 100644 --- a/src/Compiler/xlf/FSComp.txt.zh-Hans.xlf +++ b/src/Compiler/xlf/FSComp.txt.zh-Hans.xlf @@ -302,11 +302,6 @@ Allow object expressions without overrides - - applicative computation expressions - 适用的计算表达式 - - Arithmetic and logical operations in literals, enum definitions and attributes 文本、枚举定义和属性中的算术和逻辑运算 @@ -1437,11 +1432,6 @@ 此表达式的类型为“{0}”,仅可通过不明确的隐式转换使其与类型“{1}”兼容。请考虑使用显式调用“op_Implicit”。适用的隐式转换为: {2} - - This feature is not supported in this version of F#. You may need to add /langversion:preview to use this feature. - 此版本的 F# 不支持此功能。你可能需要添加 /langversion:preview 才可使用此功能。 - - The field '{0}' appears multiple times in this record expression. 字段“{0}”在此记录表达式中多次出现。 diff --git a/src/Compiler/xlf/FSComp.txt.zh-Hant.xlf b/src/Compiler/xlf/FSComp.txt.zh-Hant.xlf index 09d5f37bea9..c5a20553d19 100644 --- a/src/Compiler/xlf/FSComp.txt.zh-Hant.xlf +++ b/src/Compiler/xlf/FSComp.txt.zh-Hant.xlf @@ -302,11 +302,6 @@ Allow object expressions without overrides - - applicative computation expressions - 適用的計算運算式 - - Arithmetic and logical operations in literals, enum definitions and attributes 常值、列舉定義和屬性中的算術和邏輯作業 @@ -1437,11 +1432,6 @@ 此運算式的類型為 '{0}',僅可透過不明確的隱含轉換使其與類型 '{1}' 相容。請考慮使用明確呼叫 'op_Implicit'。適用的隱含轉換為: {2} - - This feature is not supported in this version of F#. You may need to add /langversion:preview to use this feature. - 此版本的 F# 不支援此功能。您可能需要新增 /langversion:preview 才能使用此功能。 - - The field '{0}' appears multiple times in this record expression. 欄位 '{0}' 在這個記錄運算式中出現多次。