diff options
| author | Paul Eggert | 2015-08-17 23:46:38 -0700 |
|---|---|---|
| committer | Paul Eggert | 2015-08-17 23:47:46 -0700 |
| commit | 7a68ebe0485d049a3fbbfd77d0ba5773e8e6ae87 (patch) | |
| tree | 74c44f9cd2bedff09c0b6746078608b1c1be8fd2 /src | |
| parent | 9a1175cb0a33aeb13601ae8997931a853cb45249 (diff) | |
| download | emacs-7a68ebe0485d049a3fbbfd77d0ba5773e8e6ae87.tar.gz emacs-7a68ebe0485d049a3fbbfd77d0ba5773e8e6ae87.zip | |
Clarify what happens to match data on failure
Problem reported by Ernesto Alfonso (Bug#21279).
* doc/lispref/searching.texi (Regexp Search, Simple Match Data):
Document more carefully what happens to match data after a failed
search.
* src/search.c (Fmatch_beginning, Fmatch_end): Document that
the return value is undefined if the last search failed.
(Fmatch_data): Simplify doc string line 1.
Diffstat (limited to 'src')
| -rw-r--r-- | src/search.c | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/src/search.c b/src/search.c index 5da99c408a5..106a462f804 100644 --- a/src/search.c +++ b/src/search.c | |||
| @@ -2754,7 +2754,9 @@ SUBEXP, a number, specifies which parenthesized expression in the last | |||
| 2754 | regexp. | 2754 | regexp. |
| 2755 | Value is nil if SUBEXPth pair didn't match, or there were less than | 2755 | Value is nil if SUBEXPth pair didn't match, or there were less than |
| 2756 | SUBEXP pairs. | 2756 | SUBEXP pairs. |
| 2757 | Zero means the entire text matched by the whole regexp or whole string. */) | 2757 | Zero means the entire text matched by the whole regexp or whole string. |
| 2758 | |||
| 2759 | Return value is undefined if the last search failed. */) | ||
| 2758 | (Lisp_Object subexp) | 2760 | (Lisp_Object subexp) |
| 2759 | { | 2761 | { |
| 2760 | return match_limit (subexp, 1); | 2762 | return match_limit (subexp, 1); |
| @@ -2766,14 +2768,16 @@ SUBEXP, a number, specifies which parenthesized expression in the last | |||
| 2766 | regexp. | 2768 | regexp. |
| 2767 | Value is nil if SUBEXPth pair didn't match, or there were less than | 2769 | Value is nil if SUBEXPth pair didn't match, or there were less than |
| 2768 | SUBEXP pairs. | 2770 | SUBEXP pairs. |
| 2769 | Zero means the entire text matched by the whole regexp or whole string. */) | 2771 | Zero means the entire text matched by the whole regexp or whole string. |
| 2772 | |||
| 2773 | Return value is undefined if the last search failed. */) | ||
| 2770 | (Lisp_Object subexp) | 2774 | (Lisp_Object subexp) |
| 2771 | { | 2775 | { |
| 2772 | return match_limit (subexp, 0); | 2776 | return match_limit (subexp, 0); |
| 2773 | } | 2777 | } |
| 2774 | 2778 | ||
| 2775 | DEFUN ("match-data", Fmatch_data, Smatch_data, 0, 3, 0, | 2779 | DEFUN ("match-data", Fmatch_data, Smatch_data, 0, 3, 0, |
| 2776 | doc: /* Return a list containing all info on what the last search matched. | 2780 | doc: /* Return a list describing what the last search matched. |
| 2777 | Element 2N is `(match-beginning N)'; element 2N + 1 is `(match-end N)'. | 2781 | Element 2N is `(match-beginning N)'; element 2N + 1 is `(match-end N)'. |
| 2778 | All the elements are markers or nil (nil if the Nth pair didn't match) | 2782 | All the elements are markers or nil (nil if the Nth pair didn't match) |
| 2779 | if the last match was on a buffer; integers or nil if a string was matched. | 2783 | if the last match was on a buffer; integers or nil if a string was matched. |