--- a/src/cmd/godoc/filesystem.go
+++ b/src/cmd/godoc/filesystem.go
@@ -121,7 +121,22 @@
 }
 
 func (root osFS) ReadDir(path string) ([]os.FileInfo, error) {
-	return ioutil.ReadDir(root.resolve(path)) // is sorted
+	dirName := root.resolve(path)
+	fis, err := ioutil.ReadDir(dirName) // is sorted
+	if err != nil {
+		return nil, err
+	}
+	// Replace symlinks with what they are pointing to
+	for i, fi := range fis {
+		if fi.Mode()&os.ModeSymlink != 0 {
+			fi, err = os.Stat(filepath.Join(dirName, fi.Name()))
+			if err != nil {
+				return nil, err
+			}
+		}
+		fis[i] = fi
+	}
+	return fis, nil
 }
 
 // hasPathPrefix returns true if x == y or x == y + "/" + more

