@@ -814,7 +814,7 @@ namespace ts {
814814 let projectReferenceRedirects : Map < ResolvedProjectReference | false > | undefined ;
815815 let mapFromFileToProjectReferenceRedirects : Map < Path > | undefined ;
816816 let mapFromToProjectReferenceRedirectSource : Map < SourceOfProjectReferenceRedirect > | undefined ;
817- const useSourceOfReference = useSourceInsteadOfReferenceRedirect ( host ) ;
817+ const useSourceOfReference = ! ! host . useSourceInsteadOfReferenceRedirect && host . useSourceInsteadOfReferenceRedirect ( ) ;
818818
819819 const shouldCreateNewSourceFile = shouldProgramCreateNewSourceFiles ( oldProgram , options ) ;
820820 const structuralIsReused = tryReuseStructureFromOldProgram ( ) ;
@@ -964,6 +964,7 @@ namespace ts {
964964 getResolvedProjectReferenceToRedirect,
965965 getResolvedProjectReferenceByPath,
966966 forEachResolvedProjectReference,
967+ isSourceOfProjectReferenceRedirect,
967968 emitBuildInfo
968969 } ;
969970
@@ -2496,6 +2497,10 @@ namespace ts {
24962497 return mapFromToProjectReferenceRedirectSource . get ( toPath ( file ) ) ;
24972498 }
24982499
2500+ function isSourceOfProjectReferenceRedirect ( fileName : string ) {
2501+ return useSourceOfReference && ! ! getResolvedProjectReferenceToRedirect ( fileName ) ;
2502+ }
2503+
24992504 function forEachProjectReference < T > (
25002505 projectReferences : ReadonlyArray < ProjectReference > | undefined ,
25012506 resolvedProjectReferences : ReadonlyArray < ResolvedProjectReference | undefined > | undefined ,
0 commit comments