Bug 225555 - archivers/pbzip2: fails to build with clang 6.0
Summary: archivers/pbzip2: fails to build with clang 6.0
Status: Closed FIXED
Alias: None
Product: Ports & Packages
Classification: Unclassified
Component: Individual Port(s) (show other bugs)
Version: Latest
Hardware: Any Any
: --- Affects Some People
Assignee: Babak Farrokhi
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2018-01-30 11:46 UTC by Dmitry Afanasiev
Modified: 2018-02-26 05:20 UTC (History)
1 user (show)

See Also:
bugzilla: maintainer-feedback? (farrokhi)


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Dmitry Afanasiev 2018-01-30 11:46:42 UTC
archivers/pbzip2 fails to on fresh HEAD with clang 6.0 with error message:
invalid suffix on literal; C++11 requires a space between literal and identifier

===>  Building for pbzip2-1.1.13
--- pbzip2 ---
c++ -O2 -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -DUSE_STACKSIZE_CUSTOMIZATION -pthread -D_POSIX_PTHREAD_SEMANTICS  pbzip2.cpp BZ2StreamScanner.cpp ErrorContext.cpp -o pbzip2 -lbz2 -lpthread
pbzip2.cpp:1223:75: error: invalid suffix on literal; C++11 requires a space between literal and identifier [-Wreserved-user-defined-literal]
                                fprintf(stderr, "pbzip2:  *WARNING: Compressed block size is large [%"PRIuMAX" bytes].\n",
                                                                                                      ^
                                                                                                       
pbzip2.cpp:1832:39: error: invalid suffix on literal; C++11 requires a space between literal and identifier [-Wreserved-user-defined-literal]
                fprintf(stderr, "    Output Size: %"PRIuMAX" bytes\n", (uintmax_t)CompressedSize);
                                                    ^
                                                     
pbzip2.cpp:2075:39: error: invalid suffix on literal; C++11 requires a space between literal and identifier [-Wreserved-user-defined-literal]
                fprintf(stderr, "    Output Size: %"PRIuMAX" bytes\n", (uintmax_t)CompressedSize);
                                                    ^
                                                     
pbzip2.cpp:2797:80: error: invalid suffix on literal; C++11 requires a space between literal and identifier [-Wreserved-user-defined-literal]
                fprintf(stderr, "pbzip2: *ERROR: Could not initialize (OutputBuffer); size=%"PRIuMAX"!  Aborting...\n", (uintmax_t)size);
                                                                                             ^
                                                                                              
pbzip2.cpp:4105:41: error: invalid suffix on literal; C++11 requires a space between literal and identifier [-Wreserved-user-defined-literal]
                                fprintf(stderr, "     Input Size: %"PRIuMAX" bytes\n", (uintmax_t)InFileSize);
                                                                    ^
                                                                     
pbzip2.cpp:4227:65: error: invalid suffix on literal; C++11 requires a space between literal and identifier [-Wreserved-user-defined-literal]
                                        fprintf(stderr, "*Warning* Max memory limit increased to %"PRIuMAX" MB to support %d CPUs\n", (uintmax_t)((NumBufferedBlocksMax + (numCPU * 2)) * blockSize)/1000000, numCPU);
                                                                                                   ^
                                                                                                    
6 errors generated.
*** [pbzip2] Error code 1

make[1]: stopped in /var/ports/usr/ports/archivers/pbzip2/work/pbzip2-1.1.13
1 error

make[1]: stopped in /var/ports/usr/ports/archivers/pbzip2/work/pbzip2-1.1.13
===> Compilation failed unexpectedly.
Try to set MAKE_JOBS_UNSAFE=yes and rebuild before reporting the failure to
the maintainer.
*** Error code 1

Stop.
make: stopped in /usr/ports/archivers/pbzip2


Declaring USE_CXXSTD=gnu++98 in Makefile not fixes problem.
Comment 1 commit-hook freebsd_committer freebsd_triage 2018-02-02 08:34:25 UTC
A commit references this bug:

Author: danfe
Date: Fri Feb  2 08:33:24 UTC 2018
New revision: 460675
URL: https://svnweb.freebsd.org/changeset/ports/460675

Log:
  Unbreak the build against Clang 6.0.0 and respect CXXFLAGS.

  PR:	225555

Changes:
  head/archivers/pbzip2/Makefile
Comment 2 Alexey Dokuchaev freebsd_committer freebsd_triage 2018-02-02 08:35:27 UTC
The port should be fixed as of ports r460675.
Comment 3 commit-hook freebsd_committer freebsd_triage 2018-02-26 05:20:03 UTC
A commit references this bug:

Author: swills
Date: Mon Feb 26 05:19:32 UTC 2018
New revision: 462990
URL: https://svnweb.freebsd.org/changeset/ports/462990

Log:
  MFH: r460675

  Unbreak the build against Clang 6.0.0 and respect CXXFLAGS.

  PR:	225555

  Approved by:	ports-secteam (implicit)

Changes:
_U  branches/2018Q1/
  branches/2018Q1/archivers/pbzip2/Makefile