bug-gnu-emacs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

bug#1260: marked as done (regex.c and RE_FRUGAL)


From: Emacs bug Tracking System
Subject: bug#1260: marked as done (regex.c and RE_FRUGAL)
Date: Tue, 28 Oct 2008 07:40:03 -0700

Your message dated Tue, 28 Oct 2008 10:31:29 -0400
with message-id <jwvmygo23nk.fsf-monnier+emacsbugreports@gnu.org>
and subject line Re: bug#1260: regex.c and RE_FRUGAL
has caused the Emacs bug report #1260,
regarding regex.c and RE_FRUGAL
to be marked as done.

This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
bug report if necessary, and/or fix the problem forthwith.

(NB: If you are a system administrator and have no idea what this
message is talking about, this may indicate a serious mail system
misconfiguration somewhere. Please contact don@donarmstrong.com
immediately.)


-- 
1260: http://emacsbugs.donarmstrong.com/cgi-bin/bugreport.cgi?bug=1260
Emacs Bug Tracking System
Contact don@donarmstrong.com with problems
--- Begin Message --- Subject: regex.c and RE_FRUGAL Date: Mon, 27 Oct 2008 18:56:11 +0300 User-agent: Mutt/1.5.11
Hello!

This bug report is not quite for emacs, but for its regex library.

It features RE_FRUGAL flag (very useful), but it does not seem to work.

I have tried this rather simple program and it prints 0-12 instead of expected 
0-6.

Please advice.

#include "config.h"
#include <stdlib.h>
#include <stdio.h>
#include <string.h>
#include "regex.h"
int main()
{
   const char *rexp="<.*?>";
   static struct re_pattern_buffer rexp_c;
   static struct re_registers regs;
   re_syntax_options = RE_FRUGAL;
   re_compile_pattern(rexp,strlen(rexp),&rexp_c);
   if(re_search(&rexp_c,"<html><head>",12,0,12,&regs)==-1) {
      printf("search failed\n");
      return 1;
   }
   printf("%d-%d\n",regs.start[0],regs.end[0]);
   return 0;
}

--
   Alexander.




--- End Message ---
--- Begin Message --- Subject: Re: bug#1260: regex.c and RE_FRUGAL Date: Tue, 28 Oct 2008 10:31:29 -0400 User-agent: Gnus/5.13 (Gnus v5.13) Emacs/23.0.60 (gnu/linux)
>> > This bug report is not quite for emacs, but for its regex library.
>> > It features RE_FRUGAL flag (very useful), but it does not seem to work.
>> > I have tried this rather simple program and it prints 0-12 instead of
>> > expected 0-6.
>> 
>> IIRC you'll need to set RE_NO_POSIX_BACKTRACKING as well, otherwise the
>> match returned will always be the longest.

> Thank you! The flag RE_NO_POSIX_BACKTRACKING did the trick.

> Is there a reason for RE_SYNTAX_EMACS including RE_FRUGAL and not including
> RE_NO_POSIX_BACKTRACKING?

Emacs passes RE_NO_POSIX_BACKTRACKING explicitly depending on whether it
wants posix behavior or not (it has matching functions like
"string-match" and "posix-string-match").


        Stefan


--- End Message ---

reply via email to

[Prev in Thread] Current Thread [Next in Thread]