[MacPorts] #50913: VLC @2.2.2: error: expected identifier or '('
MacPorts
noreply at macports.org
Mon Mar 21 05:46:48 PDT 2016
#50913: VLC @2.2.2: error: expected identifier or '('
----------------------+--------------------------------
Reporter: majoc@… | Owner: macports-tickets@…
Type: defect | Status: new
Priority: Normal | Milestone:
Component: ports | Version: 2.3.4
Resolution: | Keywords: yosemite
Port: VLC |
----------------------+--------------------------------
Comment (by majoc@…):
Replying to [comment:4 rjvbertin@…]:
> Something else to try:
>
> {{{
> (cd `port work vlc`/vlc-2.2.2/src ; /usr/bin/clang -DHAVE_CONFIG_H -I.
-I.. -I/opt/local/include -DMODULE_STRING=\"core\"
-DLOCALEDIR=\"/opt/local/share/locale\"
-DPKGDATADIR=\"/opt/local/share/vlc\" -DPKGLIBDIR=\"/opt/local/lib/vlc\"
-DHAVE_DYNAMIC_PLUGINS -I../include -I../include -I/opt/local/include
-D__unix__=1 -I/opt/local/lib/live/liveMedia/include
-I/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_multimedia_VLC/VLC/work/vlc-2.2.2/contrib/include
-pipe -Os -arch x86_64 -D_INTL_REDIRECT_MACROS
-I/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_multimedia_VLC/VLC/work/vlc-2.2.2/contrib/include
-Wall -Wextra -Wsign-compare -Wundef -Wpointer-arith -Wbad-function-cast
-Wwrite-strings -Wmissing-prototypes -Wvolatile-register-var -Werror-
implicit-function-declaration -pipe -fvisibility=hidden -O3 -ffast-math
-funroll-loops -fomit-frame-pointer -CC -dD -E -o
~/Desktop/vlc_misc_picture.i misc/picture.c)
> }}}
>
> on both systems and compare the resulting vlc_misc_picture.i files?
Tentatively bingo. A diff of the respective picture.i files shows:
{{{
--- vlc_mist_picture.i.10-10 2016-03-21 11:35:28.000000000 +0000
+++ vlc_mist_picture.i.10-11 2016-03-21 11:35:18.000000000 +0000
[snipissimo]
# 43 "misc/picture.c" 2
-((void) sizeof (struct { unsigned a[(sizeof (uintptr_t) == sizeof
(atomic_uintptr_t)) ? 1 : -1];}));
-
-((void) sizeof (struct { unsigned a[(_Alignof (uintptr_t) == _Alignof
(atomic_uintptr_t)) ? 1 : -1];}));
-
+_Static_assert(sizeof (uintptr_t) == sizeof (atomic_uintptr_t),
+ "Please compile in C99 mode (or update to LibVLC 3.0).");
+_Static_assert(_Alignof (uintptr_t) == _Alignof (atomic_uintptr_t),
+ "Please compile in C99 mode (or update to LibVLC 3.0).");
/**
}}}
Looking further in, it would appear /usr/include/assert.h under 10.10
doesn't have a static_assert() definition; VLC then adds _Static_assert()
(in ../include/vlc_fixups.h) as a macro which I don't pretend to
understand, but which appears to at best be being misexpanded.
> Another thing to check is whether that compile command (from your
attached vlc.main.log) is identical on 10.11 !
They are indeed identical. Well called.
--
Ticket URL: <https://trac.macports.org/ticket/50913#comment:9>
MacPorts <https://www.macports.org/>
Ports system for OS X
More information about the macports-tickets
mailing list