Julledigt

Ler. En ren kompilering då till slut. En bättre julklapp kan jag inte önska mig. Det är mer än en ändring gjord liksom. Men wxWidgets biblioteket borta i huvuddelen av koden. Lite kvar i några drivare och andra småprogram. Inget om man jämför med de ändringar som gjorts nu.

Söker jag på “TODO” i projektet så hittar jag 587 stycken fördelade på 159 filer. Det finns alltså att göra fortfarande. De “TODO” märkta delarna är bara uppenbara problempunkter. Sen är det alla nyintroducerade buggar som skall hittas och plockas bort också. Men det där tänker vi inte på idag. Idag är det seger över sig själv. Får se om jag kan hålla mig från grejerna imorgon. Det är långt ifrån säkert. Men först har jag lovat K att jag skall julstäda. Ja och det gör jag så gärna efter det här. Det har varit väldigt intensivt nu ett tag med allt annat på sparlåga.

Godnatt!



Sol-i-box från MIT – Elektroniktidningen

Sol- och vindel när det behövs. Det har varit uppgiften att lösa för några MIT-ingenjörer. Resultatet är ett system som kan förse en liten stad med elektricitet dygnet runt, även när det är vindstilla mitt i natten.

Source: Sol-i-box från MIT – Elektroniktidningen

Överdrivet

Ett enkelt fel. En character jämförd med en sträng. Men felmeddelandet från kompilatorn är lite överdrivet kan åtminstone jag tycka…

         if ('*' == str) str = "mtwtfss";
                    ^~~

In file included from /usr/include/c++/8/bits/stl_algobase.h:67,
from /usr/include/c++/8/bits/char_traits.h:39,
from /usr/include/c++/8/ios:40,
from /usr/include/c++/8/istream:38,
from /usr/include/c++/8/fstream:38,
from ../../common/dm.cpp:29:
/usr/include/c++/8/bits/stl_iterator.h:340:5: note: candidate: ‘templatebool std::operator==(const std::reverse_iterator<_Iterator>&, const std::reverse_iterator<_IteratorR>&)’
operator==(const reverse_iterator<_IteratorL>& __x,
^~ /usr/include/c++/8/bits/stl_iterator.h:340:5: note: template argument deduction/substitution failed: ../../common/dm.cpp:7262:24: note: mismatched types ‘const std::reverse_iterator<_Iterator>’ and ‘char’ if (‘‘ == str) str = “mtwtfss”; ^
In file included from /usr/include/c++/8/bits/stl_algobase.h:67,
from /usr/include/c++/8/bits/char_traits.h:39,
from /usr/include/c++/8/ios:40,
from /usr/include/c++/8/istream:38,
from /usr/include/c++/8/fstream:38,
from ../../common/dm.cpp:29:
/usr/include/c++/8/bits/stl_iterator.h:1115:5: note: candidate: ‘template bool std::operator==(const std::move_iterator<_IteratorL>&, const std::move_iterator<_IteratorR>&)’
operator==(const move_iterator<_IteratorL>& __x,
^~ /usr/include/c++/8/bits/stl_iterator.h:1115:5: note: template argument deduction/substitution failed: ../../common/dm.cpp:7262:24: note: mismatched types ‘const std::move_iterator<_IteratorL>’ and ‘char’ if (‘
‘ == str) str = “mtwtfss”; ^
In file included from /usr/include/c++/8/bits/stl_algobase.h:67,
from /usr/include/c++/8/bits/char_traits.h:39,
from /usr/include/c++/8/ios:40,
from /usr/include/c++/8/istream:38,
from /usr/include/c++/8/fstream:38,
from ../../common/dm.cpp:29:
/usr/include/c++/8/bits/stl_iterator.h:1121:5: note: candidate: ‘template bool std::operator==(const std::move_iterator<_IteratorL>&, const std::move_iterator<_IteratorL>&)’
operator==(const move_iterator<_Iterator>& __x,
^~ /usr/include/c++/8/bits/stl_iterator.h:1121:5: note: template argument deduction/substitution failed: ../../common/dm.cpp:7262:24: note: mismatched types ‘const std::move_iterator<_IteratorL>’ and ‘char’ if (‘‘ == str) str = “mtwtfss”; ^
In file included from /usr/include/c++/8/string:41,
from /usr/include/c++/8/bits/locale_classes.h:40,
from /usr/include/c++/8/bits/ios_base.h:41,
from /usr/include/c++/8/ios:42,
from /usr/include/c++/8/istream:38,
from /usr/include/c++/8/fstream:38,
from ../../common/dm.cpp:29:
/usr/include/c++/8/bits/allocator.h:146:5: note: candidate: ‘template bool std::operator==(const std::allocator<_CharT>&, const std::allocator<_T2>&)’
operator==(const allocator<_T1>&, const allocator<_T2>&)
^~ /usr/include/c++/8/bits/allocator.h:146:5: note: template argument deduction/substitution failed: ../../common/dm.cpp:7262:24: note: mismatched types ‘const std::allocator<_CharT>’ and ‘char’ if (‘
‘ == str) str = “mtwtfss”; ^
In file included from /usr/include/c++/8/string:41,
from /usr/include/c++/8/bits/locale_classes.h:40,
from /usr/include/c++/8/bits/ios_base.h:41,
from /usr/include/c++/8/ios:42,
from /usr/include/c++/8/istream:38,
from /usr/include/c++/8/fstream:38,
from ../../common/dm.cpp:29:
/usr/include/c++/8/bits/allocator.h:152:5: note: candidate: ‘template bool std::operator==(const std::allocator<_CharT>&, const std::allocator<_CharT>&)’
operator==(const allocator<_Tp>&, const allocator<_Tp>&)
^~ /usr/include/c++/8/bits/allocator.h:152:5: note: template argument deduction/substitution failed: ../../common/dm.cpp:7262:24: note: mismatched types ‘const std::allocator<_CharT>’ and ‘char’ if (‘‘ == str) str = “mtwtfss”; ^
In file included from /usr/include/c++/8/string:52,
from /usr/include/c++/8/bits/locale_classes.h:40,
from /usr/include/c++/8/bits/ios_base.h:41,
from /usr/include/c++/8/ios:42,
from /usr/include/c++/8/istream:38,
from /usr/include/c++/8/fstream:38,
from ../../common/dm.cpp:29:
/usr/include/c++/8/bits/basic_string.h:6039:5: note: candidate: ‘template bool std::operator==(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&)’
operator==(const basic_string<_CharT, _Traits, _Alloc>& __lhs,
^~ /usr/include/c++/8/bits/basic_string.h:6039:5: note: template argument deduction/substitution failed: ../../common/dm.cpp:7262:24: note: mismatched types ‘const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>’ and ‘char’ if (‘
‘ == str) str = “mtwtfss”; ^
In file included from /usr/include/c++/8/string:52,
from /usr/include/c++/8/bits/locale_classes.h:40,
from /usr/include/c++/8/bits/ios_base.h:41,
from /usr/include/c++/8/ios:42,
from /usr/include/c++/8/istream:38,
from /usr/include/c++/8/fstream:38,
from ../../common/dm.cpp:29:
/usr/include/c++/8/bits/basic_string.h:6047:5: note: candidate: ‘template typename __gnu_cxx::__enable_if::__value, bool>::__type std::operator==(const std::__cxx11::basic_string<_CharT>&, const std::__cxx11::basic_string<_CharT>&)’
operator==(const basic_string<_CharT>& __lhs,
^~ /usr/include/c++/8/bits/basic_string.h:6047:5: note: template argument deduction/substitution failed: ../../common/dm.cpp:7262:24: note: mismatched types ‘const std::__cxx11::basic_string<_CharT>’ and ‘char’ if (‘‘ == str) str = “mtwtfss”; ^
In file included from /usr/include/c++/8/string:52,
from /usr/include/c++/8/bits/locale_classes.h:40,
from /usr/include/c++/8/bits/ios_base.h:41,
from /usr/include/c++/8/ios:42,
from /usr/include/c++/8/istream:38,
from /usr/include/c++/8/fstream:38,
from ../../common/dm.cpp:29:
/usr/include/c++/8/bits/basic_string.h:6061:5: note: candidate: ‘template bool std::operator==(const _CharT
, const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&)’
operator==(const _CharT* __lhs,
^~ /usr/include/c++/8/bits/basic_string.h:6061:5: note: template argument deduction/substitution failed: ../../common/dm.cpp:7262:24: note: mismatched types ‘const _CharT’ and ‘char’ if (‘‘ == str) str = “mtwtfss”; ^
In file included from /usr/include/c++/8/string:52,
from /usr/include/c++/8/bits/locale_classes.h:40,
from /usr/include/c++/8/bits/ios_base.h:41,
from /usr/include/c++/8/ios:42,
from /usr/include/c++/8/istream:38,
from /usr/include/c++/8/fstream:38,
from ../../common/dm.cpp:29:
/usr/include/c++/8/bits/basic_string.h:6073:5: note: candidate: ‘template bool std::operator==(const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>&, const _CharT)’ operator==(const basic_string<_CharT, _Traits, _Alloc>& __lhs, ^~ /usr/include/c++/8/bits/basic_string.h:6073:5: note: template argument deduction/substitution failed: ../../common/dm.cpp:7262:24: note: mismatched types ‘const std::__cxx11::basic_string<_CharT, _Traits, _Alloc>’ and ‘char’ if (‘‘ == str) str = “mtwtfss”;
^
In file included from /usr/include/c++/8/bits/ios_base.h:46,
from /usr/include/c++/8/ios:42,
from /usr/include/c++/8/istream:38,
from /usr/include/c++/8/fstream:38,
from ../../common/dm.cpp:29:
/usr/include/c++/8/system_error:292:3: note: candidate: ‘bool std::operator==(const std::error_code&, const std::error_code&)’
operator==(const error_code& __lhs, const error_code& __rhs) noexcept
^~ /usr/include/c++/8/system_error:292:3: note: no known conversion for argument 1 from ‘char’ to ‘const std::error_code&’ /usr/include/c++/8/system_error:297:3: note: candidate: ‘bool std::operator==(const std::error_code&, const std::error_condition&)’ operator==(const error_code& __lhs, const error_condition& __rhs) noexcept ^~
/usr/include/c++/8/system_error:297:3: note: no known conversion for argument 1 from ‘char’ to ‘const std::error_code&’
/usr/include/c++/8/system_error:304:3: note: candidate: ‘bool std::operator==(const std::error_condition&, const std::error_code&)’
operator==(const error_condition& __lhs, const error_code& __rhs) noexcept
^~ /usr/include/c++/8/system_error:304:3: note: no known conversion for argument 1 from ‘char’ to ‘const std::error_condition&’ /usr/include/c++/8/system_error:311:3: note: candidate: ‘bool std::operator==(const std::error_condition&, const std::error_condition&)’ operator==(const error_condition& __lhs, ^~
/usr/include/c++/8/system_error:311:3: note: no known conversion for argument 1 from ‘char’ to ‘const std::error_condition&’
In file included from /usr/include/c++/8/bits/locale_facets.h:48,
from /usr/include/c++/8/bits/basic_ios.h:37,
from /usr/include/c++/8/ios:44,
from /usr/include/c++/8/istream:38,
from /usr/include/c++/8/fstream:38,
from ../../common/dm.cpp:29:
/usr/include/c++/8/bits/streambuf_iterator.h:203:5: note: candidate: ‘template bool std::operator==(const std::istreambuf_iterator<_CharT, _Traits>&, const std::istreambuf_iterator<_CharT,_Traits>&)’
operator==(const istreambuf_iterator<_CharT, _Traits>& __a,
^~ /usr/include/c++/8/bits/streambuf_iterator.h:203:5: note: template argument deduction/substitution failed: ../../common/dm.cpp:7262:24: note: mismatched types ‘const std::istreambuf_iterator<_CharT, _Traits>’ and ‘char’ if (‘‘ == str) str = “mtwtfss”; ^
In file included from /usr/include/c++/8/map:60,
from ../../common/dm.cpp:31:
/usr/include/c++/8/bits/stl_tree.h:406:5: note: candidate: ‘template bool std::operator==(const std::_Rb_tree_iterator<_Tp>&, const std::_Rb_tree_const_iterator<_Val>&)’
operator==(const _Rb_tree_iterator<_Val>& __x,
^~ /usr/include/c++/8/bits/stl_tree.h:406:5: note: template argument deduction/substitution failed: ../../common/dm.cpp:7262:24: note: mismatched types ‘const std::_Rb_tree_iterator<_Tp>’ and ‘char’ if (‘
‘ == str) str = “mtwtfss”; ^
In file included from /usr/include/c++/8/map:60,
from ../../common/dm.cpp:31:
/usr/include/c++/8/bits/stl_tree.h:1549:5: note: candidate: ‘template bool std::operator==(const std::_Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>&, const std::_Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>&)’
operator==(const _Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>& __x,
^~ /usr/include/c++/8/bits/stl_tree.h:1549:5: note: template argument deduction/substitution failed: ../../common/dm.cpp:7262:24: note: mismatched types ‘const std::_Rb_tree<_Key, _Val, _KeyOfValue, _Compare, _Alloc>’ and ‘char’ if (‘‘ == str) str = “mtwtfss”; ^
In file included from /usr/include/c++/8/tuple:39,
from /usr/include/c++/8/bits/stl_map.h:63,
from /usr/include/c++/8/map:61,
from ../../common/dm.cpp:31:
/usr/include/c++/8/array:252:5: note: candidate: ‘template bool std::operator==(const std::array<_Tp, _Nm>&, const std::array<_Tp, _Nm>&)’
operator==(const array<_Tp, _Nm>& __one, const array<_Tp, _Nm>& __two)
^~ /usr/include/c++/8/array:252:5: note: template argument deduction/substitution failed: ../../common/dm.cpp:7262:24: note: mismatched types ‘const std::array<_Tp, _Nm>’ and ‘char’ if (‘
‘ == str) str = “mtwtfss”; ^
In file included from /usr/include/c++/8/bits/stl_map.h:63,
from /usr/include/c++/8/map:61,
from ../../common/dm.cpp:31:
/usr/include/c++/8/tuple:1413:5: note: candidate: ‘template constexpr bool std::operator==(const std::tuple<_Tps …>&, const std::tuple<_Args2 …>&)’
operator==(const tuple<_TElements…>& __t,
^~ /usr/include/c++/8/tuple:1413:5: note: template argument deduction/substitution failed: ../../common/dm.cpp:7262:24: note: mismatched types ‘const std::tuple<_Tps …>’ and ‘char’ if (‘‘ == str) str = “mtwtfss”; ^
In file included from /usr/include/c++/8/map:61,
from ../../common/dm.cpp:31:
/usr/include/c++/8/bits/stl_map.h:1435:5: note: candidate: ‘template bool std::operator==(const std::map<_Key, _Tp, _Compare, _Alloc>&, const std::map<_Key, _Tp, _Compare, _Alloc>&)’
operator==(const map<_Key, _Tp, _Compare, _Alloc>& __x,
^~ /usr/include/c++/8/bits/stl_map.h:1435:5: note: template argument deduction/substitution failed: ../../common/dm.cpp:7262:24: note: mismatched types ‘const std::map<_Key, _Tp, _Compare, _Alloc>’ and ‘char’ if (‘
‘ == str) str = “mtwtfss”; ^
In file included from /usr/include/c++/8/map:62,
from ../../common/dm.cpp:31:
/usr/include/c++/8/bits/stl_multimap.h:1100:5: note: candidate: ‘template bool std::operator==(const std::multimap<_Key, _Tp, _Compare, _Alloc>&, const std::multimap<_Key, _Tp, _Compare, _Alloc>&)’
operator==(const multimap<_Key, _Tp, _Compare, _Alloc>& __x,
^~ /usr/include/c++/8/bits/stl_multimap.h:1100:5: note: template argument deduction/substitution failed: ../../common/dm.cpp:7262:24: note: mismatched types ‘const std::multimap<_Key, _Tp, _Compare, _Alloc>’ and‘char’ if (‘‘ == str) str = “mtwtfss”; ^
In file included from /usr/include/c++/8/set:61,
from ../../common/dm.cpp:32:
/usr/include/c++/8/bits/stl_set.h:958:5: note: candidate: ‘template bool std::operator==(const std::set<_Key, _Compare, _Alloc>&, const std::set<_Key, _Compare, _Alloc>&)’
operator==(const set<_Key, _Compare, _Alloc>& __x,
^~ /usr/include/c++/8/bits/stl_set.h:958:5: note: template argument deduction/substitution failed: ../../common/dm.cpp:7262:24: note: mismatched types ‘const std::set<_Key, _Compare, _Alloc>’ and ‘char’ if (‘
‘ == str) str = “mtwtfss”; ^
In file included from /usr/include/c++/8/set:62,
from ../../common/dm.cpp:32:
/usr/include/c++/8/bits/stl_multiset.h:943:5: note: candidate: ‘template bool std::operator==(const std::multiset<_Key, _Compare, _Alloc>&, const std::multiset<_Key, _Compare,_Alloc>&)’
operator==(const multiset<_Key, _Compare, _Alloc>& __x,
^~ /usr/include/c++/8/bits/stl_multiset.h:943:5: note: template argument deduction/substitution failed: ../../common/dm.cpp:7262:24: note: mismatched types ‘const std::multiset<_Key, _Compare, _Alloc>’ and ‘char’ if (‘‘ == str) str = “mtwtfss”; ^
In file included from /usr/include/c++/8/list:63,
from ../../common/clientlist.h:28,
from ../../common/controlobject.h:35,
from ../../common/dm.cpp:47:
/usr/include/c++/8/bits/stl_list.h:344:5: note: candidate: ‘template bool std::operator==(const std::_List_iterator<_Tp>&, const std::_List_const_iterator<_Tp>&)’
operator==(const _List_iterator<_Val>& __x,
^~ /usr/include/c++/8/bits/stl_list.h:344:5: note: template argument deduction/substitution failed: ../../common/dm.cpp:7262:24: note: mismatched types ‘const std::_List_iterator<_Tp>’ and ‘char’ if (‘
‘ == str) str = “mtwtfss”; ^
In file included from /usr/include/c++/8/list:63,
from ../../common/clientlist.h:28,
from ../../common/controlobject.h:35,
from ../../common/dm.cpp:47:
/usr/include/c++/8/bits/stl_list.h:1986:5: note: candidate: ‘template bool std::operator==(const std::__cxx11::list<_Tp, _Alloc>&, const std::__cxx11::list<_Tp, _Alloc>&)’
operator==(const list<_Tp, _Alloc>& __x, const list<_Tp, _Alloc>& __y)
^~ /usr/include/c++/8/bits/stl_list.h:1986:5: note: template argument deduction/substitution failed: ../../common/dm.cpp:7262:24: note: mismatched types ‘const std::__cxx11::list<_Tp, _Alloc>’ and ‘char’ if (‘‘ == str) str = “mtwtfss”; ^
In file included from /usr/include/c++/8/deque:64,
from ../../common/vscphelper.h:49,
from ../../common/userlist.h:35,
from ../../common/clientlist.h:32,
from ../../common/controlobject.h:35,
from ../../common/dm.cpp:47:
/usr/include/c++/8/bits/stl_deque.h:268:5: note: candidate: ‘template bool std::operator==(const std::_Deque_iterator<_Tp, _Ref, _Ptr>&, const std::_Deque_iterator<_Tp, _Ref, _Ptr>&)’
operator==(const _Deque_iterator<_Tp, _Ref, _Ptr>& __x,
^~ /usr/include/c++/8/bits/stl_deque.h:268:5: note: template argument deduction/substitution failed: ../../common/dm.cpp:7262:24: note: mismatched types ‘const std::_Deque_iterator<_Tp, _Ref, _Ptr>’ and ‘char’ if (‘
‘ == str) str = “mtwtfss”; ^
In file included from /usr/include/c++/8/deque:64,
from ../../common/vscphelper.h:49,
from ../../common/userlist.h:35,
from ../../common/clientlist.h:32,
from ../../common/controlobject.h:35,
from ../../common/dm.cpp:47:
/usr/include/c++/8/bits/stl_deque.h:275:5: note: candidate: ‘template bool std::operator==(const std::_Deque_iterator<_Tp, _Ref, _Ptr>&, const std::_Deque_iterator<_Tp, _RefR, _PtrR>&)’
operator==(const _Deque_iterator<_Tp, _RefL, _PtrL>& __x,
^~ /usr/include/c++/8/bits/stl_deque.h:275:5: note: template argument deduction/substitution failed: ../../common/dm.cpp:7262:24: note: mismatched types ‘const std::_Deque_iterator<_Tp, _Ref, _Ptr>’ and ‘char’ if (‘‘ == str) str = “mtwtfss”; ^
In file included from /usr/include/c++/8/deque:64,
from ../../common/vscphelper.h:49,
from ../../common/userlist.h:35,
from ../../common/clientlist.h:32,
from ../../common/controlobject.h:35,
from ../../common/dm.cpp:47:
/usr/include/c++/8/bits/stl_deque.h:2277:5: note: candidate: ‘template bool std::operator==(const std::deque<_Tp, _Alloc>&, const std::deque<_Tp, _Alloc>&)’
operator==(const deque<_Tp, _Alloc>& __x,
^~ /usr/include/c++/8/bits/stl_deque.h:2277:5: note: template argument deduction/substitution failed: ../../common/dm.cpp:7262:24: note: mismatched types ‘const std::deque<_Tp, _Alloc>’ and ‘char’ if (‘
‘ == str) str = “mtwtfss”; ^
In file included from /usr/include/c++/8/functional:59,
from ../../common/vscphelper.h:50,
from ../../common/userlist.h:35,
from ../../common/clientlist.h:32,
from ../../common/controlobject.h:35,
from ../../common/dm.cpp:47:
/usr/include/c++/8/bits/std_function.h:745:5: note: candidate: ‘template bool std::operator==(const std::function<_Res(_ArgTypes …)>&, std::nullptr_t)’
operator==(const function<_Res(_Args…)>& __f, nullptr_t) noexcept
^~ /usr/include/c++/8/bits/std_function.h:745:5: note: template argument deduction/substitution failed: ../../common/dm.cpp:7262:24: note: mismatched types ‘const std::function<_Res(_ArgTypes …)>’ and ‘char’ if (‘‘ == str) str = “mtwtfss”; ^
In file included from /usr/include/c++/8/functional:59,
from ../../common/vscphelper.h:50,
from ../../common/userlist.h:35,
from ../../common/clientlist.h:32,
from ../../common/controlobject.h:35,
from ../../common/dm.cpp:47:
/usr/include/c++/8/bits/std_function.h:751:5: note: candidate: ‘template bool std::operator==(std::nullptr_t, const std::function<_Res(_ArgTypes …)>&)’
operator==(nullptr_t, const function<_Res(_Args…)>& __f) noexcept
^~ /usr/include/c++/8/bits/std_function.h:751:5: note: template argument deduction/substitution failed: ../../common/dm.cpp:7262:24: note: ‘std::__cxx11::string’ {aka ‘std::__cxx11::basic_string’} is not derived from ‘const std::function<_Res(_ArgTypes …)>’ if (‘
‘ == str) str = “mtwtfss”; ^
In file included from /usr/include/c++/8/bits/locale_conv.h:41,
from /usr/include/c++/8/locale:43,
from ../../common/vscphelper.h:51,
from ../../common/userlist.h:35,
from ../../common/clientlist.h:32,
from ../../common/controlobject.h:35,
from ../../common/dm.cpp:47:
/usr/include/c++/8/bits/unique_ptr.h:689:5: note: candidate: ‘template bool std::operator==(const std::unique_ptr<_Tp, _Dp>&, const std::unique_ptr<_Up, _Ep>&)’
operator==(const unique_ptr<_Tp, _Dp>& __x,
^~ /usr/include/c++/8/bits/unique_ptr.h:689:5: note: template argument deduction/substitution failed: ../../common/dm.cpp:7262:24: note: mismatched types ‘const std::unique_ptr<_Tp, _Dp>’ and ‘char’ if (‘‘ == str) str = “mtwtfss”; ^
In file included from /usr/include/c++/8/bits/locale_conv.h:41,
from /usr/include/c++/8/locale:43,
from ../../common/vscphelper.h:51,
from ../../common/userlist.h:35,
from ../../common/clientlist.h:32,
from ../../common/controlobject.h:35,
from ../../common/dm.cpp:47:
/usr/include/c++/8/bits/unique_ptr.h:695:5: note: candidate: ‘template bool std::operator==(const std::unique_ptr<_Tp, _Dp>&, std::nullptr_t)’
operator==(const unique_ptr<_Tp, _Dp>& __x, nullptr_t) noexcept
^~ /usr/include/c++/8/bits/unique_ptr.h:695:5: note: template argument deduction/substitution failed: ../../common/dm.cpp:7262:24: note: mismatched types ‘const std::unique_ptr<_Tp, _Dp>’ and ‘char’ if (‘
‘ == str) str = “mtwtfss”; ^
In file included from /usr/include/c++/8/bits/locale_conv.h:41,
from /usr/include/c++/8/locale:43,
from ../../common/vscphelper.h:51,
from ../../common/userlist.h:35,
from ../../common/clientlist.h:32,
from ../../common/controlobject.h:35,
from ../../common/dm.cpp:47:
/usr/include/c++/8/bits/unique_ptr.h:700:5: note: candidate: ‘template bool std::operator==(std::nullptr_t, const std::unique_ptr<_Tp, _Dp>&)’
operator==(nullptr_t, const unique_ptr<_Tp, _Dp>& __x) noexcept
^~ /usr/include/c++/8/bits/unique_ptr.h:700:5: note: template argument deduction/substitution failed: ../../common/dm.cpp:7262:24: note: ‘std::__cxx11::string’ {aka ‘std::__cxx11::basic_string’} is not derived from ‘const std::unique_ptr<_Tp, _Dp>’ if (‘‘ == str) str = “mtwtfss”; ^
In file included from /usr/include/c++/8/vector:64,
from ../../common/vscphelper.h:53,
from ../../common/userlist.h:35,
from ../../common/clientlist.h:32,
from ../../common/controlobject.h:35,
from ../../common/dm.cpp:47:
/usr/include/c++/8/bits/stl_vector.h:1753:5: note: candidate: ‘template bool std::operator==(const std::vector<_Tp, _Alloc>&, const std::vector<_Tp, _Alloc>&)’
operator==(const vector<_Tp, _Alloc>& __x, const vector<_Tp, _Alloc>& __y)
^~ /usr/include/c++/8/bits/stl_vector.h:1753:5: note: template argument deduction/substitution failed: ../../common/dm.cpp:7262:24: note: mismatched types ‘const std::vector<_Tp, _Alloc>’ and ‘char’ if (‘
‘ == str) str = “mtwtfss”; ^
In file included from /usr/include/c++/8/bits/stl_algobase.h:67,
from /usr/include/c++/8/bits/char_traits.h:39,
from /usr/include/c++/8/ios:40,
from /usr/include/c++/8/istream:38,
from /usr/include/c++/8/fstream:38,
from ../../common/dm.cpp:29:
/usr/include/c++/8/bits/stl_iterator.h:863:5: note: candidate: ‘template bool __gnu_cxx::operator==(const __gnu_cxx::__normal_iterator<_IteratorL, _Container>&, const __gnu_cxx::__normal_iterator<_IteratorR, _Container>&)’
operator==(const __normal_iterator<_IteratorL, _Container>& __lhs,
^~ /usr/include/c++/8/bits/stl_iterator.h:863:5: note: template argument deduction/substitution failed: ../../common/dm.cpp:7262:24: note: mismatched types ‘const __gnu_cxx::__normal_iterator<_IteratorL, _Container>’ and ‘char’ if (‘‘ == str) str = “mtwtfss”; ^
In file included from /usr/include/c++/8/bits/stl_algobase.h:67,
from /usr/include/c++/8/bits/char_traits.h:39,
from /usr/include/c++/8/ios:40,
from /usr/include/c++/8/istream:38,
from /usr/include/c++/8/fstream:38,
from ../../common/dm.cpp:29:
/usr/include/c++/8/bits/stl_iterator.h:870:5: note: candidate: ‘template bool __gnu_cxx::operator==(const __gnu_cxx::__normal_iterator<_Iterator, _Container>&, const __gnu_cxx::__normal_iterator<_Iterator, _Container>&)’
operator==(const __normal_iterator<_Iterator, _Container>& __lhs,
^~ /usr/include/c++/8/bits/stl_iterator.h:870:5: note: template argument deduction/substitution failed: ../../common/dm.cpp:7262:24: note: mismatched types ‘const __gnu_cxx::__normal_iterator<_Iterator, _Container>’ and ‘char’ if (‘
‘ == str) str = “mtwtfss”; ^
In file included from /usr/include/x86_64-linux-gnu/c++/8/bits/c++allocator.h:33,
from /usr/include/c++/8/bits/allocator.h:46,
from /usr/include/c++/8/string:41,
from /usr/include/c++/8/bits/locale_classes.h:40,
from /usr/include/c++/8/bits/ios_base.h:41,
from /usr/include/c++/8/ios:42,
from /usr/include/c++/8/istream:38,
from /usr/include/c++/8/fstream:38,
from ../../common/dm.cpp:29:
/usr/include/c++/8/ext/new_allocator.h:155:5: note: candidate: ‘template bool __gnu_cxx::operator==(const __gnu_cxx::new_allocator<_Tp>&, const __gnu_cxx::new_allocator<_Tp>&)’
operator==(const new_allocator<_Tp>&, const new_allocator<_Tp>&)
^~~~
/usr/include/c++/8/ext/new_allocator.h:155:5: note: template argument deduction/substitution failed:
../../common/dm.cpp:7262:24: note: mismatched types ‘const __gnu_cxx::new_allocator<_Tp>’ and ‘char’
if (‘*’ == str) str = “mtwtfss”;


Snart

Jag försöker lite halvdesperat nå fram till en nu-är-det-jul-lugn” punkt. Försöket är att nå en ren kompilering av VSCP igen. Möjligen är det ett vansinnigt mål eftersom jag bara har den här dan på mig innan jag måste ta tag i annat, men gott skulle det kännas. Ja inte för att det betyder mer än att kompilatorn tycker att saker och ting är OK (det är de inte). Men det är i alla fall en bladvändare och en ny sida att återvända till efter julvila.

Men det är mycket nu. Så mycket att jag igår lyckades skicka ett brev som skulle till K’s bror till oss själva. Hmmm… Det är tydligen viktigt var man skriver vem ett brev skall sändas till och från vem det är ifrån. Tänk att det är så noga med allt. Nåja…

Hittar ett brev som jag skrev hem till morsan och farsan när jag jobbade i England. Adressen til gatan som jag bodde på finns med, 67 Anesty Lane, Leicester. Söker såklart. Känner igen. Huset är till salu. Kanske är Clair, som jag bodde hos, död. Kanske finns hon på ett äldreboende numera. 

Det är pinsamt att läsa brev som man skrivit själv för många år sedan så det åker snabbt i soptunnan. Sommaren 1978. Länge sedan. Jag äter kött tillfälligt för enkelhetens skull står det i brevet. Jo det minns jag ju.Det var svårare at vara vegitarian då. Maten där i kantinen på jobbet. Mattanten som inte ville ge mig mat första dan. Stod där bara och höll i tallriken. Jag fattade ingenting. Men sen väste hon “PLEASE” och slängde fram tallriken. Ja och jag lärde mig hur man beställer i England.Vi hade en bra relation under resten av tiden. Hon till och med log ibland.

Ja och första dan där på lagret. Alla damerna som stod där bakom hyllorna och spanade in mig. Femton tjugo stycken kanske. Jag var “the handsome Swede” där. Ja tro mig, jag har inte fått den uppmärksamheten, eller epitetet varesig före eller efter den sommaren.

Men vi var ett härligt gäng där på lagret. Underbara människor. Folk om borde blivit kamrater för livet men som försvann någonstans på vägen. Thomas tappade jag ju bort också. Han som fixade så jag kom dit. Vi bodde båda inneboende hos en familj i Katrineholm och läste på vuxengymnasiet där (Katrineholms Tekniska skola). Nytt liv för mig. Thomas sket i det mesta. Festade mest. Var olycklig. Hans föräldrar hade fabriker i Finland där de tillverkade kläder. Köpte tråd från den här firman i England. Fixade så att sonen fick jobba där en sommar. Istället för att hitta på annat sattyg alltså. Jag fick följa med som snuttefilt. En chans jag såklart inte tackade nej till.

Jag kunde ha stannat där då. Ja hade nog säkert gjort det också om inte Universitetet dragit i mig så mycket. Jag trodde verkligen att fysiken var min väg därborta.

Men länge sedan nu alltså. En god upplevelse och ett gott minne. Jag har kvar den lilla statyetten jag fick av arbetskamraterna här bredvid mig. Tänker på dem ibland. Bra människor.

Fast “gamla tider”. Man har ju mycket sådant i min ålder Jag är egentligen inte så mycket för det där. Det gamla. Är mer nyfiken på det nya. Men samtidigt går det ju inte att komma bort från det som hänt, det som satt sig i minnet. Men jag tänker i alla fall inte fastna där. Åtminstone inte ännu.

Undrar förresten om någon av de som fanns där då minns mig nu…