Michael -

You might check, whether the patch has applied at runtime. 
[DG] Thanks for the pointers. 

C-h f tramp-compile-advice-add looks fine:
tramp-compile-advice-add is a compiled Lisp function in
‘tramp-integration.el’.

(tramp-compile-advice-add PROC)

Don’t allow remote file operations while compiling.
Remove looks fine also.

'C-h v compilation-start-hook' looks fine:
compilation-start-hook is a variable defined in ‘compile.el’.
Its value is (tramp-compile-advice-add)
Original value was nil

  This variable may be risky if used as a file-local variable.
  You can customize this variable.

Documentation:
Hook run after starting a new compilation process.
The hook is run with one argument, the new process.
and compilation-finish-functions also looks as expected.

Unfortunately, I am still seeing the hang upon clicking on an error message while the compilation continues. Sorry to report, but it may actually be worse than before, in that I am seeing some outright crashes of emacs, i.e. hangs where I cannot recover by pressing ctrl-G multiple times. I didn't see that previously with this issue, though of course it's possibly just a coincidence that I did not.

JFYI, I am also seeing this error message displayed immediately after compilation commences:
Error adjusting window size: (wrong number of arguments (0 . 1) 2)

Best regards as always.
Duncan.