aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorEugen Wissner <belka@caraus.de>2026-10-03 20:51:22 +0200
committerEugen Wissner <belka@caraus.de>2026-10-03 20:51:22 +0200
commite4ce7f658741a7428597da4872435a1b0bae944c (patch)
tree50f65abf6fa4468db7bc93a6ae61d623a2dd8566 /gcc
parent5d808dd4c4003968bbdf180e1e1193231db5d43b (diff)
downloadelna-e4ce7f658741a7428597da4872435a1b0bae944c.tar.gz
Rework generics for parameters to be plain types
Diffstat (limited to 'gcc')
-rw-r--r--gcc/gcc/elna-builtins.cc6
1 files changed, 5 insertions, 1 deletions
diff --git a/gcc/gcc/elna-builtins.cc b/gcc/gcc/elna-builtins.cc
index fc43ebe..643b988 100644
--- a/gcc/gcc/elna-builtins.cc
+++ b/gcc/gcc/elna-builtins.cc
@@ -266,6 +266,10 @@ namespace elna::gcc
}
else if (const auto reference = type.get<boot::pointer_type>())
{
+ if (boot::resolve_underlying_type(reference->base).get<boot::parameter_type>() != nullptr)
+ {
+ return elna_pointer_type_node;
+ }
return build_pointer_type(get_inner_alias(reference->base, symbols, placeholder));
}
else if (const auto reference = type.get<boot::array_type>())
@@ -304,7 +308,7 @@ namespace elna::gcc
}
else if (type.get<boot::parameter_type>() != nullptr)
{
- return elna_pointer_type_node;
+ return error_mark_node;
}
else if (const auto reference = type.get<boot::instantiated_type>())
{