Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[BUG] configure script will fail silently with clang-16 #337

Open
1 of 5 tasks
tastytea opened this issue Dec 25, 2022 · 0 comments
Open
1 of 5 tasks

[BUG] configure script will fail silently with clang-16 #337

tastytea opened this issue Dec 25, 2022 · 0 comments
Labels
binary module bug Something isn't working

Comments

@tastytea
Copy link

Describe the bug

The module doesn't build with (simulated) clang-16 because ./configure silently fails. Running make afterwards does not produce fzftab.so.

  • Clang 16 (to be released appx. March 2023) will make the following default errors:

    • -Werror=implicit-function-declaration
    • -Werror=implicit-int
    • -Werror=int-conversion (this is in Clang 15, actually)
    • -Werror=incompatible-function-pointer-types (GCC does not have a specific equivalent error, use -Werror=incompatible-pointer-types instead when testing)
  • GCC 14 (to be released appx. May 2024) is likely to do the same.

https://wiki.gentoo.org/wiki/Modern_C_porting#What_changed.3F

I simulated building with clang-16 like this:

% CC=clang \
  CFLAGS="-Werror=implicit-function-declaration \
          -Werror=implicit-int \
          -Werror=incompatible-function-pointer-types" \
  ./configure --disable-gdbm --without-tcsetpgrp
% make

diffing the config.log with clang-15 with the one with simulated clang-16 and greping for '^\+.*error:' shows 64 new errors.

I can make sure:

  • I am using the latest version of fzf-tab
  • this is the minimal zshrc which can reproduce this bug
  • fzf-tab is loaded after compinit
  • fzf-tab is loaded after plugins which will wrap Tab, like junegunn/fzf/completion.zsh
  • fzf-tab is loaded before zsh-autosuggestions, zsh-syntax-highlighting and fast-syntax-highlighting.

To Reproduce

Steps to reproduce the behavior:

  1. Run CC=clang CFLAGS="-Werror=implicit-function-declaration -Werror=implicit-int -Werror=incompatible-function-pointer-types" ./configure --disable-gdbm --without-tcsetpgrp in ./modules
  2. Run make
  3. ./Src/aloxaf/fzftab.so does not exist

Expected behavior

./configure uses valid C code.

Environment:

  • OS: Gentoo Linux
  • zsh version: 5.9

Logs

Additional context

@tastytea tastytea added the bug Something isn't working label Dec 25, 2022
gentoo-bot pushed a commit to gentoo/guru that referenced this issue Jan 29, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
binary module bug Something isn't working
Projects
None yet
Development

No branches or pull requests

2 participants