From 8fe2deed95968e0287a2b36ad0f13677bd4d9667 Mon Sep 17 00:00:00 2001
From: Ichthyostega
Date: Sun, 6 Apr 2025 18:18:52 +0200
Subject: [PATCH] =?UTF-8?q?Upgrade:=20allow=20for=20build=20on=20=C2=BBTri?=
=?UTF-8?q?xie=C2=AB=20with=20GCC-14?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
* need to upgrade our custom packages to current standards
* switch those packages from CDBS to dh
* re-build on Trixie and upgrade the Lumiera DEB-Depot
After these (in detail quite expensive) preparations,
build with Scons and GCC-14 can be started.
Fix some further (basically trivial) compile problems,
uncovered by the improved type checking of modern compilers.
Note: a tremendous amount of warnings (and depreciations) is
also indicated, which will be addressed later....
---
src/lib/hetero-data.hpp | 9 +-
src/lib/iter-adapter.hpp | 1 +
src/stage/timeline/body-canvas-widget.hpp | 6 +-
src/tool/alsa.c | 1 +
tests/library/iter-zip-test.cpp | 7 +-
wiki/thinkPad.ichthyo.mm | 3460 ++++++++++++++++++++-
6 files changed, 3394 insertions(+), 90 deletions(-)
diff --git a/src/lib/hetero-data.hpp b/src/lib/hetero-data.hpp
index 92513a280..046faeae3 100644
--- a/src/lib/hetero-data.hpp
+++ b/src/lib/hetero-data.hpp
@@ -305,14 +305,15 @@ namespace lib {
class HeteroData
: public HeteroData, meta::NullType>>
{
- using _Front = HeteroData, meta::NullType>>;
+ using _FrontBlock = HeteroData, meta::NullType>>;
public:
- using NewFrame = typename _Front::Frame;
- using ChainType = _Front;
+ using NewFrame = typename _FrontBlock::Frame;
+ using ChainType = _FrontBlock;
+ using _FrontBlock::_FrontBlock;
template
- static _Front
+ static HeteroData
build (INIT&& ...initArgs)
{
return {initArgs ...};
diff --git a/src/lib/iter-adapter.hpp b/src/lib/iter-adapter.hpp
index 7cdf425b0..67155f5cb 100644
--- a/src/lib/iter-adapter.hpp
+++ b/src/lib/iter-adapter.hpp
@@ -108,6 +108,7 @@
#include "lib/meta/value-type-binding.hpp"
#include
+#include
namespace util { // see lib/util.hpp
diff --git a/src/stage/timeline/body-canvas-widget.hpp b/src/stage/timeline/body-canvas-widget.hpp
index 3918b3628..7907bf377 100644
--- a/src/stage/timeline/body-canvas-widget.hpp
+++ b/src/stage/timeline/body-canvas-widget.hpp
@@ -154,6 +154,9 @@ namespace timeline {
auto get_vadjustment() { return contentArea_.get_vadjustment(); }
auto get_hadjustment() { return contentArea_.get_hadjustment(); }
+ /** a way to get and possibly (re)compute the current TrackProfile */
+ using ProfileGetter = std::function;
+
protected: /* ==== Interface: CanvasHook ===== */
@@ -169,9 +172,6 @@ namespace timeline {
void completeLayout (DisplayEvaluation&) override;
private:/* ===== Internals ===== */
-
- /** a way to get and possibly (re)compute the current TrackProfile */
- using ProfileGetter = std::function;
ProfileGetter getProfile;
TimelineCanvas& getCanvas(int yPos);
diff --git a/src/tool/alsa.c b/src/tool/alsa.c
index 23fb6f944..196a31092 100644
--- a/src/tool/alsa.c
+++ b/src/tool/alsa.c
@@ -19,6 +19,7 @@
#include "alsa.h"
+#include
#include
static snd_pcm_t* playback_handle = 0;
diff --git a/tests/library/iter-zip-test.cpp b/tests/library/iter-zip-test.cpp
index 3c58945e1..15696057e 100644
--- a/tests/library/iter-zip-test.cpp
+++ b/tests/library/iter-zip-test.cpp
@@ -160,10 +160,11 @@ namespace test{
CHECK (t1 == "«tuple»──(42,1.61803,7)"_expect ); // ...while the other one was picked by value => t1 unchanged
// function may return references....
- auto refr = [](auto&& v) -> decltype(auto) { return v; };
- int five = 5;
+ auto refr = [](auto& v) -> decltype(auto) { return v; };
+ int five{5};
+ int& fiveR{five};
CHECK (TYPE (refr(five)) == "int&"_expect);
- CHECK (TYPE (refr(5 )) == "int&"_expect);
+ CHECK (TYPE (refr(fiveR)) == "int&"_expect);
auto t2r = mapEach (t2, refr);
CHECK (t2r == "«tuple»──(6,6)"_expect ); // function yields references, which are placed into res-tuple
diff --git a/wiki/thinkPad.ichthyo.mm b/wiki/thinkPad.ichthyo.mm
index 64e980c33..2e5567d4b 100644
--- a/wiki/thinkPad.ichthyo.mm
+++ b/wiki/thinkPad.ichthyo.mm
@@ -74867,7 +74867,93 @@
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ die konkrete Antwort schlägt sich
+
+
+ (direkt oder mittelbar)
+
+
+ im Event-State nieder
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ wenn sich die Entscheidungsbasis ändert,
+
+
+ würde das Ergebnis u.U. anders ausfallen.
+
+
+
+
+
+
+
+
+
+
+ sofern sich eine Entscheidungsgrundlage ändert, müssen alle davon abhängigen Entscheidungen re-evaluiert werden und könnten ander ausfallen; ist dies der Fall, so müssen rekursiv alle darauf aufbauenden Schritte überprüft und neu aufgespielt werden. Am Ende kann ein drastisch anderer Zustand resultieren, und dies wäre selbst wieder als Event zu dokumentieren.
+
+
+
+
+
+
+
+
+
+ die seinerzeit getroffene Entscheidung ist als Event festgehalten und wird von selbst nicht nochmal überprüft. Es können sich somit weitreichende Diskrepanzen im Event-State festsetzen, welche dem aktuell gültigen Zustand der Konfiguration widersprechen; dies kann zu Entgleisungen, katastrophaler Fehlfunktion und nicht-deterministischem Verhalten führen.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
@@ -82228,7 +82314,8 @@ Date: Thu Apr 20 18:53:17 2023 +0200
-
+
+
@@ -84625,7 +84712,7 @@ Date: Thu Apr 20 18:53:17 2023 +0200
-
+
@@ -90830,7 +90917,7 @@ Date: Thu Apr 20 18:53:17 2023 +0200
-
+
@@ -90851,7 +90938,7 @@ Date: Thu Apr 20 18:53:17 2023 +0200
-
+
@@ -90974,7 +91061,7 @@ Date: Thu Apr 20 18:53:17 2023 +0200
-
+
@@ -91118,13 +91205,13 @@ Date: Thu Apr 20 18:53:17 2023 +0200
-
+
-
+
@@ -91207,6 +91294,10 @@ Date: Thu Apr 20 18:53:17 2023 +0200
+
+
+
+
@@ -91717,7 +91808,8 @@ Date: Thu Apr 20 18:53:17 2023 +0200
-
+
+
@@ -91745,6 +91837,10 @@ Date: Thu Apr 20 18:53:17 2023 +0200
+
+
+
+
@@ -92417,8 +92513,7 @@ Date: Thu Apr 20 18:53:17 2023 +0200
Alle Parameter einer processing-function sind in ein einziges Tupel zusammengefaßt, aber typischerweise sind einige technisch, während andere die gestalterischen Steuermöglichkeiten der Operation repräsentieren. Beide Aspekte müssen auf dem gleichen NodeBuilder konfiguriert werden, aber aus verschiedenen Quellen (und vermutlich auch in verschiedenen Schritten)
-
-
+
@@ -92428,8 +92523,7 @@ Date: Thu Apr 20 18:53:17 2023 +0200
implementiert auf Basis der partial-function-closure
-
-
+
@@ -106614,8 +106708,7 @@ StM_bind(Builder<R1> b1, Extension<R1,R2> extension)
in einem Einzelfall von Hand nachgezählt...
-
-
+
@@ -109300,7 +109393,12 @@ StM_bind(Builder<R1> b1, Extension<R1,R2> extension)