Date: Sat, 6 Jan 2018 05:07:24 +0000 (UTC) From: Jan Beich <jbeich@FreeBSD.org> To: ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-head@freebsd.org Subject: svn commit: r458210 - head/multimedia/vdr/files Message-ID: <201801060507.w0657OqS090691@repo.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: jbeich Date: Sat Jan 6 05:07:24 2018 New Revision: 458210 URL: https://svnweb.freebsd.org/changeset/ports/458210 Log: multimedia/vdr: unbreak build with Clang 6 (C++14 by default) dvbsubtitle.c:854:43: error: invalid suffix on literal; C++11 requires a space between literal and identifier [-Wreserved-user-defined-literal] dbgconverter("Converter PTS: %"PRId64"\n", pts); ^ dvbsubtitle.c:890:43: error: invalid suffix on literal; C++11 requires a space between literal and identifier [-Wreserved-user-defined-literal] dbgconverter("Converter PTS: %"PRId64"\n", pts); ^ dvbsubtitle.c:949:45: error: invalid suffix on literal; C++11 requires a space between literal and identifier [-Wreserved-user-defined-literal] dbgconverter("PTS: %"PRId64" STC: %"PRId64" (%"PRId64") timeout: %d\n", sb->Pts()... ^ dvbsubtitle.c:949:61: error: invalid suffix on literal; C++11 requires a space between literal and identifier [-Wreserved-user-defined-literal] dbgconverter("PTS: %"PRId64" STC: %"PRId64" (%"PRId64") timeout: %d\n", sb->Pts()... ^ dvbsubtitle.c:949:72: error: invalid suffix on literal; C++11 requires a space between literal and identifier [-Wreserved-user-defined-literal] dbgconverter("PTS: %"PRId64" STC: %"PRId64" (%"PRId64") timeout: %d\n", sb->Pts()... ^ dvbsubtitle.c:1047:58: error: invalid suffix on literal; C++11 requires a space between literal and identifier [-Wreserved-user-defined-literal] dbgpages("Update page id %d version %d pts %"PRId64" timeout %d state %d\n", pageId, page->Ver... ^ 6 errors generated. recording.c:1646:52: error: invalid suffix on literal; C++11 requires a space between literal and identifier [-Wreserved-user-defined-literal] esyslog("ERROR: invalid file size (%"PRId64") in '%s'", buf.st_size, *fileName); ^ 1 error generated. remote.c:127:42: error: invalid suffix on literal; C++11 requires a space between literal and identifier [-Wreserved-user-defined-literal] snprintf(buffer, sizeof(buffer), "%016"PRIX64, Code); ^ ci.c:854:40: error: non-constant-expression cannot be narrowed from type 'int' to 'uint8_t' (aka 'unsigned char') in initializer list [-Wc++11-narrowing] tTime T = { mjd : htons(MJD), h : DEC2BCD(tm_gmt.tm_hour), m : DEC2BCD(tm_gmt.tm_min), s : DEC2BCD(tm... ^~~~~~~~~~~~~~~~~~~~~~~ ci.c:852:20: note: expanded from macro 'DEC2BCD' #define DEC2BCD(d) (((d / 10) << 4) + (d % 10)) ^~~~~~~~~~~~~~~~~~~~~~~~~~~~ ci.c:854:40: note: insert an explicit cast to silence this issue tTime T = { mjd : htons(MJD), h : DEC2BCD(tm_gmt.tm_hour), m : DEC2BCD(tm_gmt.tm_min), s : DEC2BCD(tm... ^~~~~~~~~~~~~~~~~~~~~~~ static_cast<uint8_t>( ) ci.c:852:20: note: expanded from macro 'DEC2BCD' #define DEC2BCD(d) (((d / 10) << 4) + (d % 10)) ^~~~~~~~~~~~~~~~~~~~~~~~~~~~ ci.c:854:69: error: non-constant-expression cannot be narrowed from type 'int' to 'uint8_t' (aka 'unsigned char') in initializer list [-Wc++11-narrowing] tTime T = { mjd : htons(MJD), h : DEC2BCD(tm_gmt.tm_hour), m : DEC2BCD(tm_gmt.tm_min), s : DEC2BCD(tm... ^~~~~~~~~~~~~~~~~~~~~~ ci.c:852:20: note: expanded from macro 'DEC2BCD' #define DEC2BCD(d) (((d / 10) << 4) + (d % 10)) ^~~~~~~~~~~~~~~~~~~~~~~~~~~~ ci.c:854:69: note: insert an explicit cast to silence this issue tTime T = { mjd : htons(MJD), h : DEC2BCD(tm_gmt.tm_hour), m : DEC2BCD(tm_gmt.tm_min), s : DEC2BCD(tm... ^~~~~~~~~~~~~~~~~~~~~~ static_cast<uint8_t>( ) ci.c:852:20: note: expanded from macro 'DEC2BCD' #define DEC2BCD(d) (((d / 10) << 4) + (d % 10)) ^~~~~~~~~~~~~~~~~~~~~~~~~~~~ ci.c:854:97: error: non-constant-expression cannot be narrowed from type 'int' to 'uint8_t' (aka 'unsigned char') in initializer list [-Wc++11-narrowing] ...htons(MJD), h : DEC2BCD(tm_gmt.tm_hour), m : DEC2BCD(tm_gmt.tm_min), s : DEC2BCD(tm_gmt.tm_sec), offset : ... ^~~~~~~~~~~~~~~~~~~~~~ ci.c:852:20: note: expanded from macro 'DEC2BCD' #define DEC2BCD(d) (((d / 10) << 4) + (d % 10)) ^~~~~~~~~~~~~~~~~~~~~~~~~~~~ ci.c:854:97: note: insert an explicit cast to silence this issue ...htons(MJD), h : DEC2BCD(tm_gmt.tm_hour), m : DEC2BCD(tm_gmt.tm_min), s : DEC2BCD(tm_gmt.tm_sec), offset : ... ^~~~~~~~~~~~~~~~~~~~~~ static_cast<uint8_t>( ) ci.c:852:20: note: expanded from macro 'DEC2BCD' #define DEC2BCD(d) (((d / 10) << 4) + (d % 10)) ^~~~~~~~~~~~~~~~~~~~~~~~~~~~ ci.c:854:130: error: non-constant-expression cannot be narrowed from type '__uint16_t' (aka 'unsigned short') to 'short' in initializer list [-Wc++11-narrowing] ...m : DEC2BCD(tm_gmt.tm_min), s : DEC2BCD(tm_gmt.tm_sec), offset : htons(tm_loc.tm_gmtoff / 60) }; ^~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/arpa/inet.h:173:18: note: expanded from macro 'htons' #define htons(x) __htons(x) ^~~~~~~~~~ /usr/include/x86/endian.h:129:20: note: expanded from macro '__htons' #define __htons(x) __bswap16(x) ^~~~~~~~~~~~ /usr/include/x86/endian.h:76:2: note: expanded from macro '__bswap16' ((__uint16_t)(__builtin_constant_p(x) ? \ ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ci.c:854:130: note: insert an explicit cast to silence this issue ...m : DEC2BCD(tm_gmt.tm_min), s : DEC2BCD(tm_gmt.tm_sec), offset : htons(tm_loc.tm_gmtoff / 60) }; ^~~~~~~~~~~~~~~~~~~~~~~~~~~~ static_cast<short>( ) /usr/include/arpa/inet.h:173:18: note: expanded from macro 'htons' #define htons(x) __htons(x) ^~~~~~~~~~ /usr/include/x86/endian.h:129:20: note: expanded from macro '__htons' #define __htons(x) __bswap16(x) ^~~~~~~~~~~~ /usr/include/x86/endian.h:76:2: note: expanded from macro '__bswap16' ((__uint16_t)(__builtin_constant_p(x) ? \ ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Reported by: antoine (via bug 224669) Added: head/multimedia/vdr/files/patch-c++11 (contents, props changed) Added: head/multimedia/vdr/files/patch-c++11 ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/multimedia/vdr/files/patch-c++11 Sat Jan 6 05:07:24 2018 (r458210) @@ -0,0 +1,74 @@ +--- ci.c.orig 2012-05-29 11:13:40 UTC ++++ ci.c +@@ -845,9 +845,9 @@ void cCiDateTime::SendDateTime(void) + int D = tm_gmt.tm_mday; + int L = (M == 1 || M == 2) ? 1 : 0; + int MJD = 14956 + D + int((Y - L) * 365.25) + int((M + 1 + L * 12) * 30.6001); +-#define DEC2BCD(d) (((d / 10) << 4) + (d % 10)) ++#define DEC2BCD(d) uint8_t(((d / 10) << 4) + (d % 10)) + struct tTime { uint16_t mjd; uint8_t h, m, s; short offset; }; +- tTime T = { mjd : htons(MJD), h : DEC2BCD(tm_gmt.tm_hour), m : DEC2BCD(tm_gmt.tm_min), s : DEC2BCD(tm_gmt.tm_sec), offset : htons(tm_loc.tm_gmtoff / 60) }; ++ tTime T = { mjd : htons(MJD), h : DEC2BCD(tm_gmt.tm_hour), m : DEC2BCD(tm_gmt.tm_min), s : DEC2BCD(tm_gmt.tm_sec), offset : short(htons(tm_loc.tm_gmtoff / 60)) }; + bool OldDumpTPDUDataTransfer = DumpTPDUDataTransfer; + DumpTPDUDataTransfer &= DumpDateTime; + if (DumpDateTime) +--- dvbsubtitle.c.orig 2012-05-08 08:17:17 UTC ++++ dvbsubtitle.c +@@ -851,7 +851,7 @@ int cDvbSubtitleConverter::ConvertFragments(const ucha + if (Length > PayloadOffset + SubstreamHeaderLength) { + int64_t pts = PesHasPts(Data) ? PesGetPts(Data) : 0; + if (pts) +- dbgconverter("Converter PTS: %"PRId64"\n", pts); ++ dbgconverter("Converter PTS: %" PRId64 "\n", pts); + const uchar *data = Data + PayloadOffset + SubstreamHeaderLength; // skip substream header + int length = Length - PayloadOffset - SubstreamHeaderLength; // skip substream header + if (ResetSubtitleAssembler) +@@ -887,7 +887,7 @@ int cDvbSubtitleConverter::Convert(const uchar *Data, + if (Length > PayloadOffset) { + int64_t pts = PesGetPts(Data); + if (pts) +- dbgconverter("Converter PTS: %"PRId64"\n", pts); ++ dbgconverter("Converter PTS: %" PRId64 "\n", pts); + const uchar *data = Data + PayloadOffset; + int length = Length - PayloadOffset; + if (length > 3) { +@@ -946,7 +946,7 @@ void cDvbSubtitleConverter::Action(void) + if (AssertOsd()) { + sb->Draw(osd); + Timeout.Set(sb->Timeout() * 1000); +- dbgconverter("PTS: %"PRId64" STC: %"PRId64" (%"PRId64") timeout: %d\n", sb->Pts(), cDevice::PrimaryDevice()->GetSTC(), Delta, sb->Timeout()); ++ dbgconverter("PTS: %" PRId64 " STC: %" PRId64 " (%" PRId64 ") timeout: %d\n", sb->Pts(), cDevice::PrimaryDevice()->GetSTC(), Delta, sb->Timeout()); + } + bitmaps->Del(sb); + } +@@ -1044,7 +1044,7 @@ int cDvbSubtitleConverter::ExtractSegment(const uchar + page->SetTimeout(pageTimeout); + page->SetState(bs.GetBits(2)); + bs.SkipBits(2); // reserved +- dbgpages("Update page id %d version %d pts %"PRId64" timeout %d state %d\n", pageId, page->Version(), page->Pts(), page->Timeout(), page->State()); ++ dbgpages("Update page id %d version %d pts %" PRId64 " timeout %d state %d\n", pageId, page->Version(), page->Pts(), page->Timeout(), page->State()); + while (!bs.IsEOF()) { + cSubtitleRegion *region = page->GetRegionById(bs.GetBits(8), true); + bs.SkipBits(8); // reserved +--- recording.c.orig 2012-06-09 13:57:30 UTC ++++ recording.c +@@ -1643,7 +1643,7 @@ cIndexFile::cIndexFile(const char *FileName, bool Reco + delta = int(buf.st_size % sizeof(tIndexTs)); + if (delta) { + delta = sizeof(tIndexTs) - delta; +- esyslog("ERROR: invalid file size (%"PRId64") in '%s'", buf.st_size, *fileName); ++ esyslog("ERROR: invalid file size (%" PRId64 ") in '%s'", buf.st_size, *fileName); + } + last = int((buf.st_size + delta) / sizeof(tIndexTs) - 1); + if (!Record && last >= 0) { +--- remote.c.orig 2012-01-16 16:57:00 UTC ++++ remote.c +@@ -124,7 +124,7 @@ bool cRemote::PutMacro(eKeys Key) + bool cRemote::Put(uint64_t Code, bool Repeat, bool Release) + { + char buffer[32]; +- snprintf(buffer, sizeof(buffer), "%016"PRIX64, Code); ++ snprintf(buffer, sizeof(buffer), "%016" PRIX64, Code); + return Put(buffer, Repeat, Release); + } +
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201801060507.w0657OqS090691>