@@ -843,12 +843,14 @@ namespace ts {
843843 return buildHost . message ( Diagnostics . A_non_dry_build_would_build_project_0 , proj . options . configFilePath ! ) ;
844844 }
845845
846- if ( context . options . verbose ) buildHost . verbose ( Diagnostics . Updating_output_timestamps_of_project_0 , proj . options . configFilePath ! ) ;
846+ if ( context . options . verbose ) {
847+ buildHost . verbose ( Diagnostics . Updating_output_timestamps_of_project_0 , proj . options . configFilePath ! ) ;
848+ }
849+
847850 const now = new Date ( ) ;
848851 const outputs = getAllProjectOutputs ( proj ) ;
849852 let priorNewestUpdateTime = minimumDate ;
850853 for ( const file of outputs ) {
851-
852854 if ( isDeclarationFile ( file ) ) {
853855 const fileModifiedTime = compilerHost . getModifiedTime ! ( file ) ;
854856 if ( fileModifiedTime !== undefined ) {
@@ -1062,8 +1064,8 @@ namespace ts {
10621064 } ;
10631065 }
10641066
1065- const inputTime = host . getModifiedTime ( inputFile ) ;
1066- if ( inputTime !== undefined && inputTime > newestInputFileTime ) {
1067+ const inputTime = host . getModifiedTime ( inputFile ) || missingFileModifiedTime ;
1068+ if ( inputTime > newestInputFileTime ) {
10671069 newestInputFileName = inputFile ;
10681070 newestInputFileTime = inputTime ;
10691071 }
@@ -1094,20 +1096,20 @@ namespace ts {
10941096 break ;
10951097 }
10961098
1097- const outputTime = host . getModifiedTime ( output ) ;
1098- if ( outputTime !== undefined && outputTime < oldestOutputFileTime ) {
1099+ const outputTime = host . getModifiedTime ( output ) || missingFileModifiedTime ;
1100+ if ( outputTime < oldestOutputFileTime ) {
10991101 oldestOutputFileTime = outputTime ;
11001102 oldestOutputFileName = output ;
11011103 }
11021104
11031105 // If an output is older than the newest input, we can stop checking
11041106 // Don't immediately return because we can still be upstream-blocked, which is a higher-priority status
1105- if ( outputTime !== undefined && outputTime < newestInputFileTime ) {
1107+ if ( outputTime < newestInputFileTime ) {
11061108 isOutOfDateWithInputs = true ;
11071109 break ;
11081110 }
11091111
1110- if ( outputTime !== undefined && outputTime > newestOutputFileTime ) {
1112+ if ( outputTime > newestOutputFileTime ) {
11111113 newestOutputFileTime = outputTime ;
11121114 newestOutputFileName = output ;
11131115 }
@@ -1122,10 +1124,8 @@ namespace ts {
11221124 newestDeclarationFileContentChangedTime = newer ( unchangedTime , newestDeclarationFileContentChangedTime ) ;
11231125 }
11241126 else {
1125- const outputModifiedTime = host . getModifiedTime ( output ) ;
1126- if ( outputModifiedTime !== undefined ) {
1127- newestDeclarationFileContentChangedTime = newer ( newestDeclarationFileContentChangedTime , outputModifiedTime ) ;
1128- }
1127+ const outputModifiedTime = host . getModifiedTime ( output ) || missingFileModifiedTime ;
1128+ newestDeclarationFileContentChangedTime = newer ( newestDeclarationFileContentChangedTime , outputModifiedTime ) ;
11291129 }
11301130 }
11311131 }
0 commit comments