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
}
/* implicit */ basic_fbstring(const value_type* s, const A& a = A())
}
/* 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())
}
basic_fbstring(const value_type* s, size_type n, const A& a = A())