After running test-case gdb.debuginfod/crc_mismatch.exp, I find a dir called '$':
...
$ ls $build/gdb/testsuite/
$      config.log     gdb.log  lib       outputs   site.exp
cache  config.status  gdb.sum  Makefile  site.bak  temp
...
Fix this by removing the stray '$' here:
...
set debugfile "$[standard_output_file ${testfile}.debug]"
...
Tested on x86_64-linux.
     return -1
 }
 
-set debugfile "$[standard_output_file ${testfile}.debug]"
+set debugfile [standard_output_file ${testfile}.debug]
 set debugdir [standard_output_file "debug"]
 remote_exec build "mkdir $debugdir"
 remote_exec build "mkdir -p [file dirname $debugfile]"