view gcc/testsuite/gcc.c-torture/compile/20090331-1.c @ 158:494b0b89df80 default tip

...
author Shinji KONO <kono@ie.u-ryukyu.ac.jp>
date Mon, 25 May 2020 18:13:55 +0900
parents 04ced10e8804
children
line wrap: on
line source

struct re_pattern_buffer {
    unsigned char *buffer;
    unsigned long int allocated;
};
void byte_regex_compile (struct re_pattern_buffer *bufp,
			 unsigned char *begalt, unsigned char *b)
{
  unsigned char *pfrom;
  unsigned char *pto;

  while ((unsigned long) (b - bufp->buffer + 3) > bufp->allocated)
    {
      unsigned char *old_buffer = bufp->buffer;
      bufp->allocated <<= 1;
      if (old_buffer != bufp->buffer)
	{
	  int incr = bufp->buffer - old_buffer;
	  b += incr;
	}
    }
  pfrom = b;
  pto = b + 3;
  while (pfrom != begalt)
    *--pto = *--pfrom;
}