From 583b20230df56a9453878cdcec5416b110e963ec Mon Sep 17 00:00:00 2001 From: erick-alcachofa Date: Wed, 15 Oct 2025 16:02:27 -0600 Subject: [PATCH] fix(Utils): Inherit from `Ts` in `OverloadSet` Signed-off-by: erick-alcachofa This commit changes the `OverloadSet` utility class to publicly inherit from its template parameters `Ts...`. This allows the `operator()` from each provided type to be brought into the overload set, efectively fixing it's functionality that would be broken otherwise. It also includes the missing `` header in the test utilities. --- lib/include/artichoke/Util/OverloadSet.hpp | 2 +- tests/include/Utils.hpp | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/lib/include/artichoke/Util/OverloadSet.hpp b/lib/include/artichoke/Util/OverloadSet.hpp index 3cdcfc2..5ad8bbb 100644 --- a/lib/include/artichoke/Util/OverloadSet.hpp +++ b/lib/include/artichoke/Util/OverloadSet.hpp @@ -3,7 +3,7 @@ namespace arti::lang { template - struct OverloadSet { + struct OverloadSet : Ts... { using Ts::operator()...; }; diff --git a/tests/include/Utils.hpp b/tests/include/Utils.hpp index 1f958ca..84f9d46 100644 --- a/tests/include/Utils.hpp +++ b/tests/include/Utils.hpp @@ -1,6 +1,7 @@ #pragma once #include +#include #include