I ran into a gdb.mi/list-thread-groups-available.exp failure:
...
Running gdb/testsuite/gdb.mi/list-thread-groups-available.exp ...
FAIL: gdb.mi/list-thread-groups-available.exp:
        list available thread groups (unexpected output)
PASS: gdb.mi/list-thread-groups-available.exp:
        list available thread groups with filter
...
When doing an experiment of running it 100 times in a row, the failure
reproduced 3 times.
Analyzing the original failure led to insufficient quoting of square brackets
in a regexp.  This patch fixes the regexp, which resulted in 0 failures in a
100-in-a-row run.
Tested on x86_64-linux.
2018-07-19  Tom de Vries  <tdevries@suse.de>
	* gdb.mi/list-thread-groups-available.exp (cores_re): Fix quoting in
	regular	expression.
+2018-07-19  Tom de Vries  <tdevries@suse.de>
+
+       * gdb.mi/list-thread-groups-available.exp (cores_re): Fix quoting in
+       regular expression.
+
 2018-07-18  Tom de Vries  <tdevries@suse.de>
 
        * gdb.base/vla-optimized-out.c: New test.
 
 set type_re "type=\"process\""
 set description_re "description=\"$string_re\""
 set user_re "user=\"$string_re\""
-set cores_re "cores=\[\"$decimal\"(,\"$decimal\")*\]"
+set cores_re "cores=\\\[\"$decimal\"(,\"$decimal\")*\\\]"
 
 # List all available processes.
 set process_entry_re "{${id_re},${type_re}(,$description_re)?(,$user_re)?(,$cores_re)?}"