From f5a2c5d55ed09f40e5f2170f84920ce8587a7d20 Mon Sep 17 00:00:00 2001 From: JohnnyMorganz Date: Wed, 10 Jul 2024 00:28:21 +0200 Subject: [PATCH] Keep commentLocations on SourceModule for definition files (#1314) Right now, the commentLocations are not transferred over to the SourceModule for definition files, like they are for normal source modules. This means we lose out on finding documentation comments. We add that in here https://github.com/luau-lang/luau/issues/1137#issuecomment-2212413633 --- Analysis/src/Frontend.cpp | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/Analysis/src/Frontend.cpp b/Analysis/src/Frontend.cpp index af3a89cd..fb7b8909 100644 --- a/Analysis/src/Frontend.cpp +++ b/Analysis/src/Frontend.cpp @@ -35,6 +35,7 @@ LUAU_FASTINT(LuauTarjanChildLimit) LUAU_FASTFLAG(LuauInferInNoCheckMode) LUAU_FASTFLAGVARIABLE(LuauKnowsTheDataModel3, false) LUAU_FASTFLAGVARIABLE(LuauCancelFromProgress, false) +LUAU_FASTFLAGVARIABLE(LuauStoreCommentsForDefinitionFiles, false) LUAU_FASTFLAG(DebugLuauDeferredConstraintResolution) LUAU_FASTFLAGVARIABLE(DebugLuauLogSolverToJson, false) LUAU_FASTFLAGVARIABLE(DebugLuauLogSolverToJsonFile, false) @@ -127,6 +128,12 @@ static ParseResult parseSourceForModule(std::string_view source, Luau::SourceMod Luau::ParseResult parseResult = Luau::Parser::parse(source.data(), source.size(), *sourceModule.names, *sourceModule.allocator, options); sourceModule.root = parseResult.root; sourceModule.mode = Mode::Definition; + + if (FFlag::LuauStoreCommentsForDefinitionFiles && options.captureComments) + { + sourceModule.hotcomments = std::move(parseResult.hotcomments); + sourceModule.commentLocations = std::move(parseResult.commentLocations); + } return parseResult; }