Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 26 Apr 2018 22:22:58 +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: r468390 - in head/devel/cxxtools: . files
Message-ID:  <201804262222.w3QMMw0q049953@repo.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: jbeich
Date: Thu Apr 26 22:22:58 2018
New Revision: 468390
URL: https://svnweb.freebsd.org/changeset/ports/468390

Log:
  devel/cxxtools: unbreak with libc++ 6.0
  
  In file included from settingswriter.cpp:28:
  In file included from ./settingswriter.h:31:
  In file included from ../include/cxxtools/char.h:32:
  In file included from /usr/include/c++/v1/string:477:
  /usr/include/c++/v1/string_view:211:5: error: static_assert failed due to requirement 'is_pod<value_type>::value' "Character type of basic_string_view must be a POD"
      static_assert(is_pod<value_type>::value, "Character type of basic_string_view must be a POD");
      ^             ~~~~~~~~~~~~~~~~~~~~~~~~~
  settingswriter.cpp:42:21: note: in instantiation of template class 'std::__1::basic_string_view<cxxtools::Char, std::__1::char_traits<cxxtools::Char> >' requested here
              *_os << std::endl;
                      ^
  
  Reported by:	pkg-fallout

Added:
  head/devel/cxxtools/files/patch-src_settingswriter.cpp   (contents, props changed)
Modified:
  head/devel/cxxtools/Makefile   (contents, props changed)

Modified: head/devel/cxxtools/Makefile
==============================================================================
--- head/devel/cxxtools/Makefile	Thu Apr 26 22:11:31 2018	(r468389)
+++ head/devel/cxxtools/Makefile	Thu Apr 26 22:22:58 2018	(r468390)
@@ -14,8 +14,6 @@ LICENSE=	LGPL21+
 LICENSE_FILE=	${WRKSRC}/COPYING
 
 BROKEN_aarch64=		does not configure: error: check for atomictype failed
-BROKEN_armv6=		does not compile: string_view:204:5: error: static_assert failed "Character type of basic_string_view must be a POD"
-BROKEN_armv7=		does not compile: string_view:204:5: error: static_assert failed "Character type of basic_string_view must be a POD"
 BROKEN_mips=		does not configure: in section .data.rel.ro of csvdeserializer-test.o: defined in discarded section
 BROKEN_mips64=		does not configure: in section .data.rel.ro of csvdeserializer-test.o: defined in discarded section
 BROKEN_sparc64=		does not configure

Added: head/devel/cxxtools/files/patch-src_settingswriter.cpp
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/devel/cxxtools/files/patch-src_settingswriter.cpp	Thu Apr 26 22:22:58 2018	(r468390)
@@ -0,0 +1,59 @@
+Regressed by https://reviews.llvm.org/rL297872
+
+In file included from settingswriter.cpp:28:
+In file included from ./settingswriter.h:31:
+In file included from ../include/cxxtools/char.h:32:
+In file included from /usr/include/c++/v1/string:477:
+/usr/include/c++/v1/string_view:211:5: error: static_assert failed due to requirement 'is_pod<value_type>::value' "Character type of basic_string_view must be a POD"
+    static_assert(is_pod<value_type>::value, "Character type of basic_string_view must be a POD");
+    ^             ~~~~~~~~~~~~~~~~~~~~~~~~~
+settingswriter.cpp:42:21: note: in instantiation of template class 'std::__1::basic_string_view<cxxtools::Char, std::__1::char_traits<cxxtools::Char> >' requested here
+            *_os << std::endl;
+                    ^
+
+--- src/settingswriter.cpp.orig	2013-12-26 09:33:48 UTC
++++ src/settingswriter.cpp
+@@ -39,7 +39,7 @@ void SettingsWriter::write(const cxxtools::Serializati
+             String value;
+             it->getValue(value);
+             this->writeEntry( it->name(), value, it->typeName() );
+-            *_os << std::endl;
++            *_os << cxxtools::String(L"\n");
+         }
+         else if( it->category() == cxxtools::SerializationInfo::Object)
+         {
+@@ -49,7 +49,7 @@ void SettingsWriter::write(const cxxtools::Serializati
+                 *_os << cxxtools::String::widen( it->name() ) << cxxtools::String(L" = ");
+                 *_os << cxxtools::String::widen( it->typeName() ) << cxxtools::String(L"{ ");
+                 this->writeParent( *it, "");
+-                *_os << cxxtools::String(L" }") << std::endl;
++                *_os << cxxtools::String(L" }") << cxxtools::String(L"\n");
+                 continue;
+             }
+ 
+@@ -71,14 +71,14 @@ void SettingsWriter::writeParent(const cxxtools::Seria
+             String value;
+             it->getValue(value);
+             this->writeEntry( it->name(), value, it->typeName() );
+-            *_os << std::endl;
++            *_os << cxxtools::String(L"\n");
+         }
+         else if( it->category() == cxxtools::SerializationInfo::Object )
+         {
+             *_os << cxxtools::String::widen( prefix ) << '.' << cxxtools::String::widen( it->name() ) << cxxtools::String(L" = ");
+             *_os<< cxxtools::String::widen( it->typeName() ) << cxxtools::String(L"{ ");
+             this->writeChild(*it);
+-            *_os << cxxtools::String(L" }") << std::endl;
++            *_os << cxxtools::String(L" }") << cxxtools::String(L"\n");
+         }
+     }
+ }
+@@ -157,7 +157,7 @@ void SettingsWriter::writeEntry(const std::string& nam
+ 
+ void SettingsWriter::writeSection(const cxxtools::String& prefix)
+ {
+-    *_os << cxxtools::String(L"[") << prefix << cxxtools::String(L"]") << std::endl;
++    *_os << cxxtools::String(L"[") << prefix << cxxtools::String(L"]") << cxxtools::String(L"\n");
+ }
+ 
+ }



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201804262222.w3QMMw0q049953>