Opened 5 years ago

Closed 4 years ago

#59172 closed defect (fixed)

lensfun @0.3.2: error: invalid suffix on literal; C++11 requires a space between literal and identifier

Reported by: rmottola (Riccardo) Owned by: dbevans (David B. Evans)
Priority: Normal Milestone:
Component: ports Version:
Keywords: haspatch Cc:
Port: lensfun

Description

With the switch to clang-8.0, lensfun fails to compile:

[ 16%] Building CXX object libs/lensfun/CMakeFiles/lensfun.dir/mod-color-sse2.cpp.o
cd /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_graphics_lensfun/lensfun/work/build/libs/lensfun && /opt/local/bin/clang++-mp-8.0  -Dlensfun_EXPORTS -I/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_graphics_lensfun/lensfun/work/build -I/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_graphics_lensfun/lensfun/work/lensfun-0.3.2/include/lensfun -isystem /opt/local/include/glib-2.0 -isystem /opt/local/lib/glib-2.0/include  -pipe -Os -DNDEBUG -I/opt/local/include -stdlib=libc++ -arch x86_64 -mmacosx-version-min=10.6 -fPIC   -DCONF_SYMBOL_VISIBILITY -o CMakeFiles/lensfun.dir/mod-color-sse2.cpp.o -c /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_graphics_lensfun/lensfun/work/lensfun-0.3.2/libs/lensfun/mod-color-sse2.cpp
/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_graphics_lensfun/lensfun/work/lensfun-0.3.2/libs/lensfun/cpuid.cpp:95:18: error: invalid suffix on literal; C++11 requires a space between literal and identifier [-Wreserved-user-defined-literal]
        "push %%"R_BX"\n" \
                 ^
                  
/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_graphics_lensfun/lensfun/work/lensfun-0.3.2/libs/lensfun/cpuid.cpp:97:17: error: invalid suffix on literal; C++11 requires a space between literal and identifier [-Wreserved-user-defined-literal]
        "pop %%"R_BX"\n" \
                ^
                 
2 errors generated.
make[2]: *** [libs/lensfun/CMakeFiles/lensfun.dir/cpuid.cpp.o] Error 1

Forcing an older compiler (5.0)

configure.compiler=macports-clang-5.0

Yields a succesfull build

Change History (3)

comment:1 Changed 5 years ago by jmroot (Joshua Root)

Owner: set to dbevans
Status: newassigned

comment:2 Changed 4 years ago by ryandesign (Ryan Carsten Schmidt)

Keywords: haspatch added
Summary: lensfun fails to compile with clang-8lensfun @0.3.2: error: invalid suffix on literal; C++11 requires a space between literal and identifier

comment:3 Changed 4 years ago by ryandesign (Ryan Carsten Schmidt)

Resolution: fixed
Status: assignedclosed

In a6b6f455f5bdeb8c0f4721fca3b5a8c571b1ccab/macports-ports (master):

lensfun: Fix building in C++11 mode

Closes: #59172

Note: See TracTickets for help on using tickets.