mirror of
				https://sourceware.org/git/glibc.git
				synced 2025-11-03 20:53:13 +03:00 
			
		
		
		
	* posix/regcomp.c (parse_bracket_exp): If build_charclass fails, set *err to the returned error, not to REG_ESPACE unconditionally. (build_word_op): Likewise. * posix/Makefile (tests): Add bug-regex16. * posix/bug-regex16.c: New test. 2003-01-16 Jakub Jelinek <jakub@redhat.com>
		
			
				
	
	
		
			36 lines
		
	
	
		
			918 B
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			36 lines
		
	
	
		
			918 B
		
	
	
	
		
			C
		
	
	
	
	
	
/* Test re_compile_pattern error messages.  */
 | 
						|
 | 
						|
#include <stdio.h>
 | 
						|
#include <string.h>
 | 
						|
#include <regex.h>
 | 
						|
 | 
						|
int
 | 
						|
main (void)
 | 
						|
{
 | 
						|
  struct re_pattern_buffer re;
 | 
						|
  const char *s;
 | 
						|
  int ret = 0;
 | 
						|
 | 
						|
  re_set_syntax (RE_SYNTAX_POSIX_EGREP);
 | 
						|
  memset (&re, 0, sizeof (re));
 | 
						|
  s = re_compile_pattern ("[[.invalid_collating_symbol.]]", 30, &re);
 | 
						|
  if (s == NULL || strcmp (s, "Invalid collation character"))
 | 
						|
    {
 | 
						|
      printf ("re_compile_pattern returned %s\n", s);
 | 
						|
      ret = 1;
 | 
						|
    }
 | 
						|
  s = re_compile_pattern ("[[=invalid_equivalence_class=]]", 31, &re);
 | 
						|
  if (s == NULL || strcmp (s, "Invalid collation character"))
 | 
						|
    {
 | 
						|
      printf ("re_compile_pattern returned %s\n", s);
 | 
						|
      ret = 1;
 | 
						|
    }
 | 
						|
  s = re_compile_pattern ("[[:invalid_character_class:]]", 29, &re);
 | 
						|
  if (s == NULL || strcmp (s, "Invalid character class name"))
 | 
						|
    {
 | 
						|
      printf ("re_compile_pattern returned %s\n", s);
 | 
						|
      ret = 1;
 | 
						|
    }
 | 
						|
  return ret;
 | 
						|
}
 |