diff --git a/src/olympic/keel/include/keel/typeconv.hpp b/src/olympic/keel/include/keel/typeconv.hpp
index 0dfa2614..0ac46791 100644
--- a/src/olympic/keel/include/keel/typeconv.hpp
+++ b/src/olympic/keel/include/keel/typeconv.hpp
@@ -143,8 +143,8 @@ class ConverterFunc: public BaseConverter {
 		}
 
 	public:
-		using SrcType = decltype(makeParamExtractor(Func))::Src;
-		using DstType = decltype(makeParamExtractor(Func))::Dst;
+		using SrcType = typename decltype(makeParamExtractor(Func))::Src;
+		using DstType = typename decltype(makeParamExtractor(Func))::Dst;
 
 		[[nodiscard]]
 		constexpr ox::StringView srcTypeName() const noexcept final {