jpcima / ysfx

Hosting library for JSFX
Apache License 2.0
172 stars 28 forks source link

Breaks on FreeBSD: no matching function for call to 'fts_open' #61

Closed yurivict closed 2 years ago

yurivict commented 2 years ago
sources/ysfx_utils_fts.cpp:43:16: error: no matching function for call to 'fts_open'
    FTS *fts = fts_open(argv, FTS_NOCHDIR|FTS_PHYSICAL, +compar);
               ^~~~~~~~
/usr/include/fts.h:131:6: note: candidate function not viable: no known conversion from 'auto (*)(const FTSENT **, const FTSENT **) -> int' (aka 'auto (*)(const _ftsent **, const _ftsent **) -> int') to 'int (*)(const FTSENT *const *, const FTSENT *const *)' (aka 'int (*)(const _ftsent *const *, const _ftsent *const *)') for 3rd argument
FTS     *fts_open(char * const *, int,
         ^
1 error generated.

From the fts_open manpage:

FTS(3)                 FreeBSD Library Functions Manual                 FTS(3)

NAME
     fts – traverse a file hierarchy

LIBRARY
     Standard C Library (libc, -lc)

SYNOPSIS
     #include <fts.h>

     FTS *
     fts_open(char * const *path_argv, int options,
         int (*compar)(const FTSENT * const *, const FTSENT * const *));

...
jpcima commented 2 years ago

It's fixed in f1c02a9, probably.