[fossil-users] New regexp OpenBSD build error

2013-01-01 Thread James Turner
On OpenBSD re_exec is already defined in unistd.h causing the latest
trunk to fail to build.

In file included from ./src/diff.c:22:
bld/diff.h:287: error: conflicting types for 're_exec'
/usr/include/unistd.h:478: error: previous declaration of 're_exec' was
here
*** Error 1 in /home/james/code/fossil (./src/main.mk:557 'bld/diff.o')

It's obsolete but sadly still present.

http://www.openbsd.org/cgi-bin/man.cgi?query=re_execapropos=0sektion=0manpath=OpenBSD+Currentarch=i386format=html

-- 
James Turner | 0x560B0C49
___
fossil-users mailing list
fossil-users@lists.fossil-scm.org
http://lists.fossil-scm.org:8080/cgi-bin/mailman/listinfo/fossil-users


Re: [fossil-users] New regexp OpenBSD build error

2013-01-01 Thread Baptiste Daroussin
2013/1/2 James Turner ja...@calminferno.net:
 On OpenBSD re_exec is already defined in unistd.h causing the latest
 trunk to fail to build.

 In file included from ./src/diff.c:22:
 bld/diff.h:287: error: conflicting types for 're_exec'
 /usr/include/unistd.h:478: error: previous declaration of 're_exec' was
 here
 *** Error 1 in /home/james/code/fossil (./src/main.mk:557 'bld/diff.o')

 It's obsolete but sadly still present.

 http://www.openbsd.org/cgi-bin/man.cgi?query=re_execapropos=0sektion=0manpath=OpenBSD+Currentarch=i386format=html


Same on FreeBSD,

Here is a patch to rename the re_exec to re_execute and make the code
compilable on FreeBSD.
http://people.freebsd.org/~bapt/re_exec.diff

While here I don't know what are the rules about the warnings, but I'm
building fossil with clang and I a couple of warnings.
For the test, I run configure --json --markdown

If you think it is worth fixing those, I can provide a patch, next
week (I'll be off the rest of the week)

./src/diff.c:428:25: warning: passing 'const char *' to parameter of
type 'const unsigned char *' converts between pointers to integer
types with different sign [-Wpointer-sign]
if( re_execute(pRe, aDLine-z, LENGTH(aDLine)) ){
^
bld/diff.h:287:53: note: passing argument to parameter 'zIn' here
int re_execute(ReCompiled *pRe,const unsigned char *zIn,int nIn);
^


In file included from ./src/json_timeline.c:21:
bld/json_timeline.h:329:12: warning: duplicate 'const' declaration
specifier [-Wduplicate-decl-specifier]
const char const *json_timeline_query(void);
   ^
./src/json_timeline.c:95:12: warning: duplicate 'const' declaration
specifier [-Wduplicate-decl-specifier]
const char const * json_timeline_query(void){
   ^
2 warnings generated.


./src/regexp.c:196:33: warning: passing 'const unsigned char *' to
parameter of type 'const char *' converts between pointers to integer
types with different sign [-Wpointer-sign]
  in.mx = nIn=0 ? nIn : strlen(zIn);
^~~
/usr/include/string.h:92:28: note: passing argument to parameter here
size_t   strlen(const char *) __pure;
^
./src/regexp.c:631:24: warning: passing 'const unsigned char *' to
parameter of type 'const char *' converts between pointers to integer
types with different sign [-Wpointer-sign]
  pRe-sIn.mx = strlen(pRe-sIn.z);
   ^~
/usr/include/string.h:92:28: note: passing argument to parameter here
size_t   strlen(const char *) __pure;
^
2 warnings generated.

./src/cson_amalgamation.c:4385:20: warning: comparison of unsigned
expression  0 is always false [-Wtautological-compare]
if( ! arg || (n0) ) return cson_rc.ArgError;
  ~^~
1 warning generated.


regards,
Bapt
___
fossil-users mailing list
fossil-users@lists.fossil-scm.org
http://lists.fossil-scm.org:8080/cgi-bin/mailman/listinfo/fossil-users