Bug#1108920: libbctoolbox-dev: cannot bind non-const lvalue reference o
From
Frank Heckenbach@21:1/5 to
All on Mon Jul 7 21:50:01 2025
Package: libbctoolbox-dev
Version: 5.3.105-1
Severity: normal
Tags: patch
/usr/include/bctoolbox/logging.h: In function "pumpstream& operator<<(pumpstream&&, _Tp&&)":
/usr/include/bctoolbox/logging.h:392:16: error: cannot bind non-const lvalue reference of type "pumpstream&" to an rvalue of type "pumpstream"
392 | return pumpStream;
| ^~~~~~~~~~
Patch:
--- /usr/include/bctoolbox/logging.h
+++ /usr/include/bctoolbox/logging.h
@@ -359,7 +359,7 @@
template <typename _Tp>
friend pumpstream &operator<<(pumpstream &__os, _Tp &&__x);
template <typename _Tp>
- friend pumpstream &operator<<(pumpstream &&__os, _Tp &&__x);
+ friend pumpstream &&operator<<(pumpstream &&__os, _Tp &&__x);
friend pumpstream &operator<<(pumpstream &__os, std::ostream &(*pf)(std::ostream &));
private:
@@ -385,7 +385,7 @@
}
template <typename T>
-inline pumpstream &operator<<(pumpstream &&pumpStream, T &&x) {
+inline pumpstream &&operator<<(pumpstream &&pumpStream, T &&x) {
if (pumpStream.mIslogLevelEnabled) {
pumpStream.mOstringstream << std::forward<T>(x);
}
-- System Information:
Debian Release: 13.0
APT prefers testing-security
APT policy: (500, 'testing-security'), (500, 'testing-debug'), (500, 'testing')
Architecture: amd64 (x86_64)
Kernel: Linux 6.1.0-35-amd64 (SMP w/24 CPU threads; PREEMPT)
Kernel taint flags: TAINT_WARN
Locale: