#10159 added unicode check/cross/circle glyphs to the test results. This is usually fine, but if Python' stdout can't print unicode, then test_runner will throw an error and not print the results:
File "./test/functional/test_runner.py", line 482, in <module>
main()
File "./test/functional/test_runner.py", line 244, in main
run_tests(test_list, config["environment"]["SRCDIR"], config["environment"]["BUILDDIR"], config["environment"]["EXEEXT"], args.jobs, args.coverage, passon_args)
File "./test/functional/test_runner.py", line 288, in run_tests
print_results(test_results, max_len_name, (int(time.time() - time0)))
File "./test/functional/test_runner.py", line 316, in print_results
print(results)
UnicodeEncodeError: 'ascii' codec can't encode character '\u2713' in position 104: ordinal not in range(128)
This change only prints the glyphs if stdout supports unicode, and replaces them with a letter otherwise:
with unicode:

without:

First reported by @TheBlueMatt