Menu

#40 3.2p0 build failure on macOS with clang error: expected expression __attribute__ ((fallthrough));

v1.0_(example)
open
nobody
None
1
2017-07-17
2017-07-14
Anonymous
No

Apple LLVM version 8.0.0 (clang-800.0.42.1)
Tested on OS X 10.11.
This doesn't happen with GCC 7.1.0

Full build log is here: https://gist.github.com/ilovezfs/2c85df517b189991adb918f9e764267a

The error is

ow_server_message.c:585:4: error: expected expression
                        __attribute__ ((fallthrough));

Verbosely:

/bin/sh ../../../../libtool  --tag=CC   --mode=compile /usr/bin/clang -DHAVE_CONFIG_H -I. -I../../../../src/include  -I/usr/local/Cellar/libusb/1.0.21/include/libusb-1.0 -F/usr/local/Frameworks -I../include -fexceptions -Wall -W -Wundef -Wshadow -Wpointer-arith -Wcast-qual -Wcast-align -Wstrict-prototypes -Wredundant-decls -D__EXTENSIONS__ -D_FILE_OFFSET_BITS=64 -D_BSD_SOURCE=1 -D_ISOC99_SOURCE=1 -D_POSIX_C_SOURCE=200112L -D_DEFAULT_SOURCE -D_THREAD_SAFE  -I/usr/local/Cellar/libusb/1.0.21/include/libusb-1.0 -I/usr/local/Cellar/libftdi/1.3/include/libftdi1  -Os -w -pipe -march=native -mmacosx-version-min=10.11 -DNO_NESTED_FUNCTIONS -D_BSD_SOURCE=1 -D_ISOC99_SOURCE=1 -D_POSIX_C_SOURCE=200112L -D_DEFAULT_SOURCE -c -o ow_server_message.lo ow_server_message.c
libtool: compile:  /usr/bin/clang -DHAVE_CONFIG_H -I. -I../../../../src/include -I/usr/local/Cellar/libusb/1.0.21/include/libusb-1.0 -F/usr/local/Frameworks -I../include -fexceptions -Wall -W -Wundef -Wshadow -Wpointer-arith -Wcast-qual -Wcast-align -Wstrict-prototypes -Wredundant-decls -D__EXTENSIONS__ -D_FILE_OFFSET_BITS=64 -D_BSD_SOURCE=1 -D_ISOC99_SOURCE=1 -D_POSIX_C_SOURCE=200112L -D_DEFAULT_SOURCE -D_THREAD_SAFE -I/usr/local/Cellar/libusb/1.0.21/include/libusb-1.0 -I/usr/local/Cellar/libftdi/1.3/include/libftdi1 -Os -w -pipe -march=native -mmacosx-version-min=10.11 -DNO_NESTED_FUNCTIONS -D_BSD_SOURCE=1 -D_ISOC99_SOURCE=1 -D_POSIX_C_SOURCE=200112L -D_DEFAULT_SOURCE -c ow_server_message.c  -fno-common -DPIC -o .libs/ow_server_message.o
ow_server_message.c:585:4: error: expected expression
                        __attribute__ ((fallthrough));
                        ^
1 error generated.
make[4]: *** [ow_server_message.lo] Error 1
make[3]: *** [install-recursive] Error 1
make[2]: *** [install-recursive] Error 1
make[1]: *** [install-recursive] Error 1
make: *** [install-recursive] Error 1

Discussion

  • Jan Kandziora

    Jan Kandziora - 2017-07-15

    Could you please check whether replacing

    __attribute__ ((fallthrough));

    by

    [[clang::fallthrough]];

    heals this problem? You have to do it at several places. If so, I would prepare a macro for this then.

    Related: Is there a standard way to tell clang and gcc apart?

     

    Last edit: Jan Kandziora 2017-07-15
  • Jan Kandziora

    Jan Kandziora - 2017-07-16

    Please check whether v3.2p1 fixes your problem.

     
  • ilovezfs

    ilovezfs - 2017-07-17
     
Want the latest updates on software, tech news, and AI?
Get latest updates about software, tech news, and AI from SourceForge directly in your inbox once a month.