updated for version 7.4.662
Problem: When 'M' is in the 'cpo' option then selecting a text object in
parenthesis does not work correctly.
Solution: Keep 'M' in 'cpo' when finding a match. (Hirohito Higashi)
diff --git a/src/testdir/test_textobjects.in b/src/testdir/test_textobjects.in
new file mode 100644
index 0000000..d1cdafc
--- /dev/null
+++ b/src/testdir/test_textobjects.in
@@ -0,0 +1,40 @@
+Tests for text-objects vim: set ft=vim :
+
+STARTTEST
+:so small.vim
+:if !has('textobjects') | e! test.ok | wq! test.out | endif
+:set nocompatible
+:"
+:function SelectionOut(data)
+: new
+: call setline(1, a:data)
+: call setreg('"', '')
+: normal! ggfrmavi)y
+: $put =getreg('\"')
+: call setreg('"', '')
+: normal! `afbmavi)y
+: $put =getreg('\"')
+: call setreg('"', '')
+: normal! `afgmavi)y
+: $put =getreg('\"')
+: %yank a
+: q!
+: $put =getreg('a')
+:endfunction
+:"
+:$put ='# Test for vi) without cpo-M'
+:set cpo-=M
+:call SelectionOut('(red \(blue) green)')
+:"
+:$put ='# Test for vi) with cpo-M #1'
+:set cpo+=M
+:call SelectionOut('(red \(blue) green)')
+:"
+:$put ='# Test for vi) with cpo-M #2'
+:set cpo+=M
+:call SelectionOut('(red (blue\) green)')
+:/^Results/,$w test.out
+:qa!
+ENDTEST
+
+Results of text-objects