Главная страница


ru.unix.bsd

 
 - RU.UNIX.BSD ------------------------------------------------------------------
 From : Dmitry Rud                           2:5020/400     17 Sep 2000  00:32:25
 To : All
 Subject : regex.h в FreeBSD 3.4S
 -------------------------------------------------------------------------------- 
 
         Hi!
 
 Такая вот фигня творится:
 
 >> ~$ uname -a
 
 FreeBSD rnd.donetsk.ua 3.4-STABLE FreeBSD 3.4-STABLE #1: Sat May 20
 02:13:47 EEST 2000     root@rnd.donetsk.ua:/usr/src/sys/compile/RND  i386
 
 >> ~$ gcc --version
 
 2.7.2.3
 
 >> ~$ cat test.c 
 
 #include <regex.h>
 void main() {};
 
 >> ~$ gcc test.c 
 
 In file included from test.c:1:
 /usr/include/regex.h:46: parse error before `regoff_t'
 /usr/include/regex.h:46: warning: data definition has no type or storage class
 /usr/include/regex.h:50: parse error before `size_t'
 /usr/include/regex.h:50: warning: no semicolon at end of struct or union
 /usr/include/regex.h:53: parse error before `}'
 /usr/include/regex.h:53: warning: data definition has no type or storage class
 /usr/include/regex.h:56: parse error before `regoff_t'
 /usr/include/regex.h:56: warning: no semicolon at end of struct or union
 /usr/include/regex.h:57: warning: data definition has no type or storage class
 /usr/include/regex.h:58: warning: data definition has no type or storage class
 /usr/include/regex.h:99: parse error before `*'
 /usr/include/regex.h:100: parse error before `regerror'
 /usr/include/regex.h:100: parse error before `*'
 /usr/include/regex.h:100: warning: data definition has no type or storage class
 /usr/include/regex.h:101: parse error before `*'
 /usr/include/regex.h:103: parse error before `*'
 
 >> ~$ cat -n /usr/include/regex.h
 
   1   /*-
   2    * Copyright (c) 1992 Henry Spencer.
   3    * Copyright (c) 1992, 1993
   4    *  The Regents of the University of California.  All rights reserved.
  36    *
  37    *  @(#)regex.h  8.2 (Berkeley) 1/3/94
  38    */
  39   
  40   #ifndef _REGEX_H_
  41   #define  _REGEX_H_
  42   
  43   #include <sys/cdefs.h>
  44   
  45   /* types */
  46   typedef off_t regoff_t;
  47   
  48   typedef struct {
  49    int re_magic;
  50    size_t re_nsub;    /* number of parenthesized subexpressions */
  51    __const char *re_endp;  /* end pointer for REG_PEND */
  52    struct re_guts *re_g;  /* none of your business :-) */
  53   } regex_t;
  54   
  55   typedef struct {
  56    regoff_t rm_so;    /* start of match */
  57    regoff_t rm_eo;    /* end of match */
  58   } regmatch_t;
  59   
  60   /* regcomp() flags */
  61   #define  REG_BASIC  0000
  62   #define  REG_EXTENDED   0001
  63   #define  REG_ICASE  0002
  64   #define  REG_NOSUB  0004
  65   #define  REG_NEWLINE 0010
  66   #define  REG_NOSPEC  0020
  67   #define  REG_PEND   0040
  68   #define  REG_DUMP   0200
  69   
  70   /* regerror() flags */
  71   #define  REG_NOMATCH  1
  72   #define  REG_BADPAT   2
  73   #define  REG_ECOLLATE    3
  74   #define  REG_ECTYPE   4
  75   #define  REG_EESCAPE  5
  76   #define  REG_ESUBREG  6
  77   #define  REG_EBRACK   7
  78   #define  REG_EPAREN   8
  79   #define  REG_EBRACE   9
  80   #define  REG_BADBR  10
  81   #define  REG_ERANGE  11
  82   #define  REG_ESPACE  12
  83   #define  REG_BADRPT  13
  84   #define  REG_EMPTY  14
  85   #define  REG_ASSERT  15
  86   #define  REG_INVARG  16
  87   #define  REG_ATOI   255  /* convert name to number (!) */
  88   #define  REG_ITOA   0400 /* convert number to name (!) */
  89   
  90   /* regexec() flags */
  91   #define  REG_NOTBOL  00001
  92   #define  REG_NOTEOL  00002
  93   #define  REG_STARTEND   00004
  94   #define  REG_TRACE  00400   /* tracing of execution */
  95   #define  REG_LARGE  01000   /* force large representation */
  96   #define  REG_BACKR  02000   /* force use of backref code */
  97   
  98   __BEGIN_DECLS
  99   int  regcomp __P((regex_t *, const char *, int));
 100   size_t  regerror __P((int, const regex_t *, char *, size_t));
 101   int  regexec __P((const regex_t *,
 102        const char *, size_t, regmatch_t [], int));
 103   void regfree __P((regex_t *));
 104   __END_DECLS
 105   
 106   #endif /* !_REGEX_H_ */
 
 >> ===========
 
 Hичего не понимаю. Файл /usr/include/regex.h, насколько я могу судить,
 абсолютно нормальный и ничем не отличается от своего оригинала из
 дерева исходников ОС. Куда копать?
 
 -- 
         rnd.
 
 --- ifmail v.2.15dev5
  * Origin: Glaub' an die Macht des Efeuwaldes... (2:5020/400)
 
 

Вернуться к списку тем, сортированных по: возрастание даты  уменьшение даты  тема  автор 

 Тема:    Автор:    Дата:  
 regex.h в FreeBSD 3.4S   Dmitry Rud   17 Sep 2000 00:32:25 
 regex.h в FreeBSD 3.4S   Max Khon   17 Sep 2000 20:26:36 
Архивное /ru.unix.bsd/8974addfa1f1.html, оценка 3 из 5, голосов 10
Яндекс.Метрика
Valid HTML 4.01 Transitional