diff options
Diffstat (limited to 'gcc')
| -rw-r--r-- | gcc/gcc/elna-builtins.cc | 6 |
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>()) { |
