diff -Naru testdir-orig/Makefile testdir/Makefile
--- testdir-orig/Makefile	2015-01-21 11:21:22.000000000 +0000
+++ testdir/Makefile	2015-01-27 17:05:53.000000000 +0000
@@ -41,6 +41,7 @@
 		test_close_count.out \
 		test_command_count.out \
 		test_eval.out \
+		test_eval_clipboard.out \
 		test_insertcount.out \
 		test_listlbr.out \
 		test_listlbr_utf8.out \
diff -Naru testdir-orig/test_eval.in testdir/test_eval.in
--- testdir-orig/test_eval.in	2015-01-27 15:45:16.000000000 +0000
+++ testdir/test_eval.in	2015-01-27 17:37:12.000000000 +0000
@@ -1,7 +1,5 @@
 Test for various eval features.   vim: set ft=vim :
 
-Note: system clipboard is saved, changed and restored.
-
 STARTTEST
 :so small.vim
 :set encoding=latin1
@@ -121,19 +119,6 @@
 call SetReg('/', ["abc/\n"])
 call SetReg('=', ['"abc/"'])
 call SetReg('=', ["\"abc/\n\""])
-$put ='{{{1 System clipboard'
-" Save and restore system clipboard.
-" If no connection to X-Server is possible, test should succeed.
-:let _clipreg = ['+', getreg('+'), getregtype('+')]
-:let _clipopt = &cb
-:let &cb='unnamedplus'
-:1y
-:AR +
-:tabdo :windo :echo "hi"
-:3y
-:AR +
-:let &cb=_clipopt
-:call call('setreg', _clipreg)
 $put ='{{{1 Errors'
 call ErrExe('call setreg()')
 call ErrExe('call setreg(1)')
diff -Naru testdir-orig/test_eval.ok testdir/test_eval.ok
--- testdir-orig/test_eval.ok	2015-01-27 15:45:16.000000000 +0000
+++ testdir/test_eval.ok	2015-01-27 16:59:18.000000000 +0000
@@ -316,9 +316,6 @@
 =: type v; value: abc/ (['abc/']), expr: "abc/" (['"abc/"'])
 {{{2 setreg('=', ['"abc/ "'])
 =: type v; value: abc/  (['abc/ ']), expr: "abc/ " (['"abc/ "'])
-{{{1 System clipboard
-+: type V; value: Test for various eval features.   vim: set ft=vim :  (['Test for various eval features.   vim: set ft=vim :']), expr: Test for various eval features.   vim: set ft=vim :  (['Test for various eval features.   vim: set ft=vim :'])
-+: type V; value: Note: system clipboard is saved, changed and restored.  (['Note: system clipboard is saved, changed and restored.']), expr: Note: system clipboard is saved, changed and restored.  (['Note: system clipboard is saved, changed and restored.'])
 {{{1 Errors
 Executing call setreg()
 Vim(call):E119: Not enough arguments for function: setreg
diff -Naru testdir-orig/test_eval_clipboard.in testdir/test_eval_clipboard.in
--- testdir-orig/test_eval_clipboard.in	1970-01-01 00:00:00.000000000 +0000
+++ testdir/test_eval_clipboard.in	2015-01-27 17:55:43.000000000 +0000
@@ -0,0 +1,46 @@
+Test for various eval features with system clipboard   vim: set ft=vim :
+
+Note: system clipboard is saved, changed and restored.
+
+STARTTEST
+:so small.vim
+:if !exists("+clipboard") | e! test.ok | w! test.out | qa! | endif
+:set encoding=latin1
+:set noswapfile
+:lang C
+:fun AppendRegContents(reg)
+    call append('$', printf('%s: type %s; value: %s (%s), expr: %s (%s)', a:reg, getregtype(a:reg), getreg(a:reg), string(getreg(a:reg, 0, 1)), getreg(a:reg, 1), string(getreg(a:reg, 1, 1))))
+endfun
+:command -nargs=? AR :call AppendRegContents(<q-args>)
+:fun Test()
+$put ='{{{1 System clipboard'
+" Save and restore system clipboard.
+" If no connection to X-Server is possible, test should succeed.
+:let _clipreg = ['+', getreg('+'), getregtype('+')]
+:let _clipopt = &cb
+:let &cb='unnamedplus'
+:1y
+:AR +
+:tabdo :windo :echo "hi"
+:3y
+:AR +
+:let &cb=_clipopt
+:call call('setreg', _clipreg)
+endfun
+:"
+:call Test()
+:"
+:delfunction AppendRegContents
+:delfunction Test
+:delcommand AR
+:call garbagecollect(1)
+
+:/^start:/+1,$wq! test.out
+:" vim: et ts=4 isk-=\: fmr=???,???
+:call getchar()
+ENDTEST
+
+012345678
+012345678
+
+start:
diff -Naru testdir-orig/test_eval_clipboard.ok testdir/test_eval_clipboard.ok
--- testdir-orig/test_eval_clipboard.ok	1970-01-01 00:00:00.000000000 +0000
+++ testdir/test_eval_clipboard.ok	2015-01-27 17:54:56.000000000 +0000
@@ -0,0 +1,3 @@
+{{{1 System clipboard
++: type V; value: Test for various eval features with system clipboard   vim: set ft=vim :  (['Test for various eval features with system clipboard   vim: set ft=vim :']), expr: Test for various eval features with system clipboard   vim: set ft=vim :  (['Test for various eval features with system clipboard   vim: set ft=vim :'])
++: type V; value: Note: system clipboard is saved, changed and restored.  (['Note: system clipboard is saved, changed and restored.']), expr: Note: system clipboard is saved, changed and restored.  (['Note: system clipboard is saved, changed and restored.'])
