test-mb-regexp 1.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940
  1. #!/bin/sh
  2. exec guile -q -s "$0" "$@"
  3. !#
  4. ;;; test-mb-regexp --- A multibyte regexp test
  5. ;;;
  6. ;;; Copyright (C) 2010, 2011 Free Software Foundation, Inc.
  7. ;;;
  8. ;;; This library is free software; you can redistribute it and/or
  9. ;;; modify it under the terms of the GNU Lesser General Public
  10. ;;; License as published by the Free Software Foundation; either
  11. ;;; version 3 of the License, or (at your option) any later version.
  12. ;;;
  13. ;;; This library is distributed in the hope that it will be useful,
  14. ;;; but WITHOUT ANY WARRANTY; without even the implied warranty of
  15. ;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
  16. ;;; Lesser General Public License for more details.
  17. ;;;
  18. ;;; You should have received a copy of the GNU Lesser General Public
  19. ;;; License along with this library; if not, write to the Free Software
  20. ;;; Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
  21. ;; This test depends on not setting the locale -- that multibyte strings
  22. ;; don't trigger the abort in regexp.c:fixup_multibyte_match.
  23. (use-modules (ice-9 regex))
  24. (exit (if (equal?
  25. (match:substring
  26. (regexp-exec
  27. (make-regexp "(.)(.)(.)")
  28. (string (integer->char 200) #\x (integer->char 202)))
  29. 2)
  30. "x")
  31. 0
  32. 1))
  33. ;; Local Variables:
  34. ;; mode: scheme
  35. ;; End: