From e26d2ae1394538bdcf9436a9ba5654c1c8ec28f8 Mon Sep 17 00:00:00 2001 From: Andy Hanson Date: Wed, 10 May 2017 12:11:44 -0700 Subject: [PATCH] An enum should include a Namespace SemanticMeaning --- src/services/utilities.ts | 4 +++- tests/cases/fourslash/findAllRefsEnumAsNamespace.ts | 6 ++++++ 2 files changed, 9 insertions(+), 1 deletion(-) create mode 100644 tests/cases/fourslash/findAllRefsEnumAsNamespace.ts diff --git a/src/services/utilities.ts b/src/services/utilities.ts index 065c42245f6..688d3fc9643 100644 --- a/src/services/utilities.ts +++ b/src/services/utilities.ts @@ -41,9 +41,11 @@ namespace ts { return SemanticMeaning.Type; case SyntaxKind.ClassDeclaration: - case SyntaxKind.EnumDeclaration: return SemanticMeaning.Value | SemanticMeaning.Type; + case SyntaxKind.EnumDeclaration: + return SemanticMeaning.All; + case SyntaxKind.ModuleDeclaration: if (isAmbientModule(node)) { return SemanticMeaning.Namespace | SemanticMeaning.Value; diff --git a/tests/cases/fourslash/findAllRefsEnumAsNamespace.ts b/tests/cases/fourslash/findAllRefsEnumAsNamespace.ts new file mode 100644 index 00000000000..a065f355d10 --- /dev/null +++ b/tests/cases/fourslash/findAllRefsEnumAsNamespace.ts @@ -0,0 +1,6 @@ +/// + +////enum [|{| "isWriteAccess": true, "isDefinition": true |}E|] { A } +////let e: [|E|].A; + +verify.singleReferenceGroup("enum E");