Opened 3 months ago

Last modified 3 months ago

#73847 new defect

dvdrw-tools @7.1: error: invalid suffix on literal; C++11 requires a space between literal and identifier [-Wreserved-user-defined-literal]

Reported by: nocturne-mit Owned by:
Priority: Normal Milestone:
Component: ports Version: 2.12.4
Keywords: tahoe Cc:
Port: dvdrw-tools

Description

:info:build   278 | __deprecated_msg("This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead.")
:info:build       | ^
:info:build /Library/Developer/CommandLineTools/SDKs/MacOSX26.sdk/usr/include/sys/cdefs.h:227:48: note: expanded from macro '__deprecated_msg'
:info:build   227 |         #define __deprecated_msg(_msg) __attribute__((__deprecated__(_msg)))
:info:build       |                                                       ^
:info:build dvd+rw-mediainfo.cpp:624:27: error: invalid suffix on literal; C++11 requires a space between literal and identifier [-Wreserved-user-defined-literal]
:info:build   624 |         printf (" %s    %u*2KB=%"LLU"\n",
:info:build       |                                  ^
:info:build       |                                   
:info:build dvd+rw-mediainfo.cpp:944:16: error: invalid suffix on literal; C++11 requires a space between literal and identifier [-Wreserved-user-defined-literal]
:info:build   944 |             printf("%"LLU"\n",(unsigned long long)capacity*blocksize);
:info:build       |                       ^
:info:build       |                        
:info:build dvd+rw-mediainfo.cpp:951:13: error: invalid suffix on literal; C++11 requires a space between literal and identifier [-Wreserved-user-defined-literal]
:info:build   951 |                 printf("%"LLU"\n",(unsigned long long)capacity*blocksize);
:info:build       |                           ^
:info:build       |                            
:info:build dvd+rw-mediainfo.cpp:1124:43: error: invalid suffix on literal; C++11 requires a space between literal and identifier [-Wreserved-user-defined-literal]
:info:build  1124 |         printf ("READ CAPACITY:          %u*%u=%"LLU"\n",
:info:build       |                                                  ^
:info:build       |                                                   
:info:build 8 warnings and 4 errors generated.
:info:build make[1]: *** [dvd+rw-mediainfo.o] Error 1
:info:build make[1]: Leaving directory `/opt/local/var/macports/build/dvdrw-tools-2f057fde/work/dvd+rw-tools-7.1'
:info:build make: *** [all] Error 2
:info:build make: Leaving directory `/opt/local/var/macports/build/dvdrw-tools-2f057fde/work/dvd+rw-tools-7.1'
:info:build Command failed:  cd "/opt/local/var/macports/build/dvdrw-tools-2f057fde/work/dvd+rw-tools-7.1" && /usr/bin/make -j12 -w all PREFIX=/opt/local CC="/opt/local/var/macports/build/dvdrw-tools-2f057fde/work/compwrap/cc/usr/bin/clang" CXX="/opt/local/var/macports/build/dvdrw-tools-2f057fde/work/compwrap/cxx/usr/bin/clang++" OBJC="/opt/local/var/macports/build/dvdrw-tools-2f057fde/work/compwrap/objc/usr/bin/clang" OBJCXX="/opt/local/var/macports/build/dvdrw-tools-2f057fde/work/compwrap/objcxx/usr/bin/clang++" INSTALL="/opt/local/libexec/macports/clonebin/install" 
:info:build Exit code: 2
:error:build Failed to build dvdrw-tools: command execution failed

Change History (1)

comment:1 Changed 3 months ago by ryandesign (Ryan Carsten Schmidt)

Keywords: tahoe added
Summary: dvdrw-tools build fails on arm64 Tahoe (Xcode 26.4)dvdrw-tools @7.1: error: invalid suffix on literal; C++11 requires a space between literal and identifier [-Wreserved-user-defined-literal]

So, your compiler is in C++11 (or later) mode by default, and this code as written is not compatible with C++11 mode (though this error, at least, is easy to fix).

This fix, and possibly others in that repository, look relevant:

https://gitweb.gentoo.org/repo/gentoo.git/commit/app-cdr/dvd+rw-tools/files?id=116f8966c17e6ed5d5fe426a6ace8fb0ac416632

Note: See TracTickets for help on using tickets.