@@ -551,6 +551,7 @@ func (extraction *Extraction) extractError(tw *trap.Writer, err packages.Error,
551551 log .Printf ("Warning: failed to evaluate symlinks for %s" , wd )
552552 }
553553 file = filepath .Join (ewd , "-" )
554+ extraction .extractFileInfo (tw , file , true )
554555 } else {
555556 var rawfile string
556557 if parts := threePartPos .FindStringSubmatch (pos ); parts != nil {
@@ -585,7 +586,7 @@ func (extraction *Extraction) extractError(tw *trap.Writer, err packages.Error,
585586 file = afile
586587 }
587588
588- extraction .extractFileInfo (tw , file )
589+ extraction .extractFileInfo (tw , file , false )
589590 }
590591
591592 extraction .Lock .Lock ()
@@ -654,7 +655,7 @@ func (extraction *Extraction) extractFile(ast *ast.File, pkg *packages.Package)
654655 return err
655656 }
656657
657- extraction .extractFileInfo (tw , path )
658+ extraction .extractFileInfo (tw , path , false )
658659
659660 extractScopes (tw , ast , pkg )
660661
@@ -672,7 +673,7 @@ func (extraction *Extraction) extractFile(ast *ast.File, pkg *packages.Package)
672673
673674// extractFileInfo extracts file-system level information for the given file, populating
674675// the `files` and `containerparent` tables
675- func (extraction * Extraction ) extractFileInfo (tw * trap.Writer , file string ) {
676+ func (extraction * Extraction ) extractFileInfo (tw * trap.Writer , file string , isDummy bool ) {
676677 // We may visit the same file twice because `extractError` calls this function to describe files containing
677678 // compilation errors. It is also called for user source files being extracted.
678679 extraction .Lock .Lock ()
@@ -704,7 +705,9 @@ func (extraction *Extraction) extractFileInfo(tw *trap.Writer, file string) {
704705 dbscheme .HasLocationTable .Emit (tw , lbl , emitLocation (tw , lbl , 0 , 0 , 0 , 0 ))
705706 extraction .Lock .Lock ()
706707 slbl := extraction .StatWriter .Labeler .FileLabelFor (file )
707- dbscheme .CompilationCompilingFilesTable .Emit (extraction .StatWriter , extraction .Label , extraction .GetFileIdx (file ), slbl )
708+ if ! isDummy {
709+ dbscheme .CompilationCompilingFilesTable .Emit (extraction .StatWriter , extraction .Label , extraction .GetFileIdx (file ), slbl )
710+ }
708711 extraction .Lock .Unlock ()
709712 break
710713 }
0 commit comments