Commit 72c2a0d3 authored by Hannes Roth's avatar Hannes Roth Committed by Dave Watson

(Folly/FBString) Use a lambda to throw an exception for NULL input

Summary:
This should be standard compliant. `__PRETTY_FUNCTION__` seems
unnecessary, it just prints `basic_fbstring`, might as well use that and
simplify the code.

Test Plan:
`fbconfig --platform-all=gcc-4.8.1-glibc-2.17-fb folly/test`
`fbmake runtests_dbg`
`fbmake runtests_opt`

`fbconfig --platform-all=gcc-4.7.1-glibc-2.14.1 folly/test`
`fbmake runtests_dbg`
`fbmake runtests_opt`

`fbconfig --clang folly/test`
`...`

Reviewed By: andrei.alexandrescu@fb.com

FB internal diff: D1243670
parent 52fceaf4
......@@ -1054,12 +1054,13 @@ public:
}
/* implicit */ basic_fbstring(const value_type* s, const A& a = A())
: store_(s, s ? traits_type::length(s) : ({
basic_fbstring<char> err = __PRETTY_FUNCTION__;
err += ": null pointer initializer not valid";
std::__throw_logic_error(err.c_str());
0;
})) {
: store_(s, s
? traits_type::length(s)
: [] {
std::__throw_logic_error(
"basic_fbstring: null pointer initializer not valid");
return 0;
}()) {
}
basic_fbstring(const value_type* s, size_type n, const A& a = A())
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment