@@ -1405,32 +1405,34 @@ let ComputeAccessAndCompPath env declKindOpt m vis overrideVis actualParent =
14051405 let cpath = if accessModPermitted then Some env.eCompPath else None
14061406 vis, cpath
14071407
1408- let CheckForAbnormalOperatorNames cenv (idRange:range)opName isMember =
1409- if (idRange.EndColumn - idRange.StartColumn <= 5) &&
1410- not cenv.g.compilingFslib
1408+ let CheckForAbnormalOperatorNames cenv (idRange:range)coreDisplayName (memberInfoOpt: ValMemberInfo option) =
1409+ if (idRange.EndColumn - idRange.StartColumn <= 5) &&
1410+ not cenv.g.compilingFslib
14111411 then
1412- match opName with
1412+ let opName = DecompileOpName coreDisplayName
1413+ let isMember = memberInfoOpt.IsSome
1414+ match opName with
14131415 | PrettyNaming.Relational ->
14141416 if isMember then
1415- warning(StandardOperatorRedefinitionWarning(FSComp.SR.tcInvalidMethodNameForRelationalOperator(opName,(CompileOpName opName) ), idRange))
1417+ warning(StandardOperatorRedefinitionWarning(FSComp.SR.tcInvalidMethodNameForRelationalOperator(opName,coreDisplayName ), idRange))
14161418 else
1417- warning(StandardOperatorRedefinitionWarning(FSComp.SR.tcInvalidOperatorDefinitionRelational( opName) , idRange))
1419+ warning(StandardOperatorRedefinitionWarning(FSComp.SR.tcInvalidOperatorDefinitionRelational opName, idRange))
14181420 | PrettyNaming.Equality ->
14191421 if isMember then
1420- warning(StandardOperatorRedefinitionWarning(FSComp.SR.tcInvalidMethodNameForEquality(opName,(CompileOpName opName) ), idRange))
1422+ warning(StandardOperatorRedefinitionWarning(FSComp.SR.tcInvalidMethodNameForEquality(opName,coreDisplayName ), idRange))
14211423 else
1422- warning(StandardOperatorRedefinitionWarning(FSComp.SR.tcInvalidOperatorDefinitionEquality( opName) , idRange))
1424+ warning(StandardOperatorRedefinitionWarning(FSComp.SR.tcInvalidOperatorDefinitionEquality opName, idRange))
14231425 | PrettyNaming.Control ->
14241426 if isMember then
1425- warning(StandardOperatorRedefinitionWarning(FSComp.SR.tcInvalidMemberName(opName,(CompileOpName opName) ), idRange))
1427+ warning(StandardOperatorRedefinitionWarning(FSComp.SR.tcInvalidMemberName(opName,coreDisplayName ), idRange))
14261428 else
1427- warning(StandardOperatorRedefinitionWarning(FSComp.SR.tcInvalidOperatorDefinition( opName) , idRange))
1429+ warning(StandardOperatorRedefinitionWarning(FSComp.SR.tcInvalidOperatorDefinition opName, idRange))
14281430 | PrettyNaming.Indexer ->
14291431 if not isMember then
1430- error(StandardOperatorRedefinitionWarning(FSComp.SR.tcInvalidIndexOperatorDefinition( opName) , idRange))
1432+ error(StandardOperatorRedefinitionWarning(FSComp.SR.tcInvalidIndexOperatorDefinition opName, idRange))
14311433 | PrettyNaming.FixedTypes ->
14321434 if isMember then
1433- warning(StandardOperatorRedefinitionWarning(FSComp.SR.tcInvalidMemberNameFixedTypes( opName) , idRange))
1435+ warning(StandardOperatorRedefinitionWarning(FSComp.SR.tcInvalidMemberNameFixedTypes opName, idRange))
14341436 | PrettyNaming.Other -> ()
14351437
14361438let MakeAndPublishVal cenv env (altActualParent, inSig, declKind, vrec, (ValScheme(id, typeScheme, topValData, memberInfoOpt, isMutable, inlineFlag, baseOrThis, vis, compgen, isIncrClass, isTyFunc, hasDeclaredTypars)), attrs, doc, konst, isGeneratedEventVal) =
@@ -1537,7 +1539,7 @@ let MakeAndPublishVal cenv env (altActualParent, inSig, declKind, vrec, (ValSche
15371539 (hasDeclaredTypars || inSig), isGeneratedEventVal, konst, actualParent)
15381540
15391541
1540- CheckForAbnormalOperatorNames cenv id.idRange(DecompileOpName vspec.CoreDisplayName) (Option.isSome memberInfoOpt)
1542+ CheckForAbnormalOperatorNames cenv id.idRange vspec.CoreDisplayName memberInfoOpt
15411543
15421544 PublishValueDefn cenv env declKind vspec
15431545