diff --git a/.git-rr-cache b/.git-rr-cache
index e6a8fb875f3..1a252755513 160000
--- a/.git-rr-cache
+++ b/.git-rr-cache
@@ -1 +1 @@
-Subproject commit e6a8fb875f39f31764fadd68414228d4a1f9137f
+Subproject commit 1a2527555136ec4399ff6b00195b7d350825fb51
diff --git a/dist/PathTools/lib/File/Spec/Win32.pm b/dist/PathTools/lib/File/Spec/Win32.pm
index f034f1cd2bf..a808ec3b272 100644
--- a/dist/PathTools/lib/File/Spec/Win32.pm
+++ b/dist/PathTools/lib/File/Spec/Win32.pm
@@ -122,11 +122,12 @@ sub file_name_is_absolute ($self, str $file) {
 =item catfile
 
 Concatenate one or more directory names and a filename to form a
-complete path ending with a filename
+complete path ending with a filename.
+@p is either str or File::Temp::Dir.
 
 =cut
 
-sub catfile ($self, str @p) {
+sub catfile ($self, @p) {
 
     # Legacy / compatibility support
     #
@@ -142,7 +143,7 @@ sub catfile ($self, str @p) {
     return _canon_cat( @p );
 }
 
-sub catdir ($self, str @p) {
+sub catdir ($self, @p) {
 
     # Legacy / compatibility support
     #
@@ -182,7 +183,7 @@ sub canonpath ($, $path?) {
     # Legacy / compatibility support
     #
     return $path if !defined($path) or $path eq '';
-    return _canon_cat( $path );
+    return _canon_cat( "$path" );
 }
 
 =item splitpath
@@ -371,7 +372,7 @@ implementation of these methods, not the semantics.
 =cut
 
 
-sub _canon_cat (str $first, str @rest)				# @path -> path
+sub _canon_cat ($first, @rest)				# @path -> path
 {
     #print "# ",$first, ", ", @rest, "\n";
     my $volume = $first =~ s{ \A ([A-Za-z]:) ([\\/]?) }{}x	# drive letter