Update runtime files.
diff --git a/runtime/compiler/cs.vim b/runtime/compiler/cs.vim
index 4cc1784..4f6dd3c 100644
--- a/runtime/compiler/cs.vim
+++ b/runtime/compiler/cs.vim
@@ -1,8 +1,8 @@
 " Vim compiler file
-" Compiler:	Microsoft Visual Studio C#
-" Maintainer:	Zhou YiChao (broken.zhou@gmail.com)
-" Previous Maintainer:	Joseph H. Yao (hyao@sina.com)
-" Last Change:	2012 Apr 30
+" Compiler:               Microsoft Visual Studio C#
+" Maintainer:             Yichao Zhou (broken.zhou@gmail.com)
+" Previous Maintainer:    Joseph H. Yao (hyao@sina.com)
+" Last Change:            Jul 22, 2019
 
 if exists("current_compiler")
   finish
@@ -20,7 +20,7 @@
             \%trror%*[^:]:\ %m,
             \%tarning%*[^:]:\ %m
 
-CompilerSet makeprg=csc\ %
+CompilerSet makeprg=csc\ %:S
 
 let &cpo = s:keepcpo
 unlet s:keepcpo
diff --git a/runtime/compiler/erlang.vim b/runtime/compiler/erlang.vim
index e177a27..e22887e 100644
--- a/runtime/compiler/erlang.vim
+++ b/runtime/compiler/erlang.vim
@@ -1,13 +1,13 @@
 " Vim compiler file
 " Compiler:     Erlang
 " Maintainer:	Dmitry Vasiliev <dima at hlabs dot org>
-" Last Change:	2012-02-13
+" Last Change:	2019 Jul 23
 
 if exists("current_compiler")
   finish
 endif
 let current_compiler = "erlang"
 
-CompilerSet makeprg=erlc\ -Wall\ %
+CompilerSet makeprg=erlc\ -Wall\ %:S
 
 CompilerSet errorformat=%f:%l:\ %m
diff --git a/runtime/compiler/fortran_cv.vim b/runtime/compiler/fortran_cv.vim
index 089d3b2..bc217bd 100644
--- a/runtime/compiler/fortran_cv.vim
+++ b/runtime/compiler/fortran_cv.vim
@@ -22,7 +22,7 @@
 		\%-Z%p%^%.%#,
 		\%-G%.%#,
 " Compiler call
-CompilerSet makeprg=df\ /nologo\ /noobj\ /c\ %
+CompilerSet makeprg=df\ /nologo\ /noobj\ /c\ %:S
 " Visual fortran defaults to printing output on stderr
 " Adjust option shellpipe accordingly
 
diff --git a/runtime/compiler/jikes.vim b/runtime/compiler/jikes.vim
index 5125128..2d4500e 100644
--- a/runtime/compiler/jikes.vim
+++ b/runtime/compiler/jikes.vim
@@ -1,7 +1,7 @@
 " Vim Compiler File
 " Compiler:	Jikes
 " Maintainer:	Dan Sharp <dwsharp at hotmail dot com>
-" Last Change:	20 Jan 2009
+" Last Change:	2019 Jul 23
 " URL:		http://dwsharp.users.sourceforge.net/vim/compiler
 
 if exists("current_compiler")
@@ -14,5 +14,5 @@
 endif
 
 " Jikes defaults to printing output on stderr
-CompilerSet makeprg=jikes\ -Xstdout\ +E\ \"%\"
+CompilerSet makeprg=jikes\ -Xstdout\ +E\ \"%:S\"
 CompilerSet errorformat=%f:%l:%v:%*\\d:%*\\d:%*\\s%m
diff --git a/runtime/compiler/onsgmls.vim b/runtime/compiler/onsgmls.vim
index 130d3e2..68925ef 100644
--- a/runtime/compiler/onsgmls.vim
+++ b/runtime/compiler/onsgmls.vim
@@ -1,7 +1,7 @@
 " Vim compiler file
 " Compiler:	onsgmls
 " Maintainer:	Robert Rowsome <rowsome@wam.umd.edu>
-" Last Change:	2004 Mar 27
+" Last Change:	2019 Jul 23
 
 if exists("current_compiler")
   finish
@@ -15,7 +15,7 @@
 let s:cpo_save = &cpo
 set cpo-=C
 
-CompilerSet makeprg=onsgmls\ -s\ %
+CompilerSet makeprg=onsgmls\ -s\ %:S
 
 CompilerSet errorformat=onsgmls:%f:%l:%c:%t:%m,
 		    \onsgmls:%f:%l:%c:%m
diff --git a/runtime/compiler/perl.vim b/runtime/compiler/perl.vim
index 583c6c3..a857cae 100644
--- a/runtime/compiler/perl.vim
+++ b/runtime/compiler/perl.vim
@@ -1,7 +1,7 @@
 " Vim Compiler File
 " Compiler:     Perl syntax checks (perl -Wc)
 " Maintainer:   Christian J. Robinson <heptite@gmail.com>
-" Last Change:  2006 Aug 13
+" Last Change:  2019 Jul 22
 
 if exists("current_compiler")
   finish
@@ -27,7 +27,7 @@
 	let s:taintopt = ''
 endif
 
-exe 'CompilerSet makeprg=perl\ -' . s:warnopt . s:taintopt . 'c\ %'
+exe 'CompilerSet makeprg=perl\ -' . s:warnopt . s:taintopt . 'c\ %:S'
 
 CompilerSet errorformat=
 	\%-G%.%#had\ compilation\ errors.,
diff --git a/runtime/compiler/rustc.vim b/runtime/compiler/rustc.vim
index c27bdc9..5e5b9a4 100644
--- a/runtime/compiler/rustc.vim
+++ b/runtime/compiler/rustc.vim
@@ -19,7 +19,7 @@
 if exists("g:rustc_makeprg_no_percent") && g:rustc_makeprg_no_percent != 0
 	CompilerSet makeprg=rustc
 else
-	CompilerSet makeprg=rustc\ \%
+	CompilerSet makeprg=rustc\ \%:S
 endif
 
 " Old errorformat (before nightly 2016/08/10)
diff --git a/runtime/compiler/splint.vim b/runtime/compiler/splint.vim
index 6239ca7..3d7ada6 100644
--- a/runtime/compiler/splint.vim
+++ b/runtime/compiler/splint.vim
@@ -2,7 +2,7 @@
 " Compiler:     splint/lclint (C source code checker)
 " Maintainer:   Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
 " Splint Home:	http://www.splint.org/
-" Last Change:  2005 Apr 21
+" Last Change:  2019 Jul 23
 " $Revision: 1.3 $
 
 if exists("current_compiler")
@@ -19,7 +19,7 @@
 
 " adapt this if you want to check more than one file at a time.
 " put command line options in .splintrc or ~/.splintrc
-CompilerSet makeprg=splint\ %
+CompilerSet makeprg=splint\ %:S
 
 " Note: when using the new array bounds checking flags:  Each warning
 " usually has several lines and several references to source code mostly
diff --git a/runtime/compiler/xmlwf.vim b/runtime/compiler/xmlwf.vim
index cd2e2bb..3de9d08 100644
--- a/runtime/compiler/xmlwf.vim
+++ b/runtime/compiler/xmlwf.vim
@@ -1,7 +1,7 @@
 " Vim Compiler File
 " Compiler:	xmlwf
 " Maintainer:	Robert Rowsome <rowsome@wam.umd.edu>
-" Last Change:	2004 Mar 27
+" Last Change:	2019 Jul 23
 
 if exists("current_compiler")
   finish
@@ -15,7 +15,7 @@
   command -nargs=* CompilerSet setlocal <args>
 endif
 
-CompilerSet makeprg=xmlwf\ %
+CompilerSet makeprg=xmlwf\ %:S
 
 CompilerSet errorformat=%f:%l%c:%m