MFH: r468390

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
Approved by:	ports-secteam blanket
This commit is contained in:
Jan Beich 2018-04-26 22:26:02 +00:00
parent 65acdc702a
commit f12f165c11
Notes: svn2git 2021-03-31 03:12:20 +00:00
svn path=/branches/2018Q2/; revision=468391
2 changed files with 59 additions and 2 deletions

View File

@ -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

View File

@ -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");
}
}