@eht16 Ok, so `universal-ctags` port will build with the default compiler 
choice, because old Xcode gcc of 10.6 does not fail on incompatible pointer 
types, but just issues a warning (which it does in this case).

```
  CC       main/libctags_a-portable-scandir.o
main/portable-scandir.c: In function 'scanDirectory':
main/portable-scandir.c:238:56: error: passing argument 3 of 'scandir' from 
incompatible pointer type [-Wincompatible-pointer-types]
  238 |         return scandir (directory_name, array_pointer, select_function, 
compare_function);
      |                                                        ^~~~~~~~~~~~~~~
      |                                                        |
      |                                                        int (*)(const 
struct dirent *)
In file included from /opt/local/include/LegacySupport/dirent.h:27,
                 from main/portable-dirent_p.h:5,
                 from main/routines_p.h:17,
                 from main/portable-scandir.c:112:
/usr/include/dirent.h:129:5: note: expected 'int (*)(struct dirent *)' but 
argument is of type 'int (*)(const struct dirent *)'
  129 |     int (*)(struct dirent *), int (*)(const void *, const void *)) 
__DARWIN_INODE64(scandir);
      |     ^~~~~~~~~~~~~~~~~~~~~~~~
main/portable-scandir.c:238:73: error: passing argument 4 of 'scandir' from 
incompatible pointer type [-Wincompatible-pointer-types]
  238 |         return scandir (directory_name, array_pointer, select_function, 
compare_function);
      |                                                                         
^~~~~~~~~~~~~~~~
      |                                                                         
|
      |                                                                         
int (*)(const struct dirent **, const struct dirent **)
/usr/include/dirent.h:129:31: note: expected 'int (*)(const void *, const void 
*)' but argument is of type 'int (*)(const struct dirent **, const struct 
dirent **)'
  129 |     int (*)(struct dirent *), int (*)(const void *, const void *)) 
__DARWIN_INODE64(scandir);
      |                               ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
make[2]: *** [main/libctags_a-portable-scandir.o] Error 1
make[2]: *** Waiting for unfinished jobs....
```

The same goes for old Xcode clang, so you can see a warning but no error in the 
buildbot log: 
https://build.macports.org/builders/ports-10.7_x86_64-builder/builds/212887/steps/install-port/logs/stdio

It fails to build with gcc14, which does not accept incompatible pointer types.

-- 
Reply to this email directly or view it on GitHub:
https://github.com/geany/geany/issues/4215#issuecomment-2614550727
You are receiving this because you are subscribed to this thread.

Message ID: <geany/geany/issues/4215/[email protected]>

Reply via email to