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_exec&apropos=0&sektion=0&manpath=OpenBSD+Current&arch=i386&format=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 || (n<0) ) 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

Reply via email to