Fixed t00014 on macos (Fixes #176)

This commit is contained in:
Bartek Kryza
2023-12-05 23:11:36 +01:00
parent 9280edfafb
commit f1d3695ccc
4 changed files with 21 additions and 7 deletions

View File

@@ -62,6 +62,7 @@ bool template_builder::simplify_system_template(
if (simplified != full_name) {
ct.set_type(simplified);
ct.set_id(common::to_id(simplified));
ct.clear_params();
return true;
}
@@ -435,6 +436,10 @@ void template_builder::process_template_arguments(
arg_index++;
}
// Update id
template_instantiation.set_id(
common::to_id(template_instantiation.full_name(false)));
}
void template_builder::argument_process_dispatch(
@@ -1029,6 +1034,9 @@ template_builder::try_as_template_specialization_type(
simplify_system_template(
argument, argument.to_string(using_namespace(), false));
argument.set_id(
common::to_id(argument.to_string(using_namespace(), false)));
const auto nested_template_instantiation_full_name =
nested_template_instantiation->full_name(false);
@@ -1140,10 +1148,12 @@ std::optional<template_parameter> template_builder::try_as_record_type(
auto argument = template_parameter::make_argument({});
type = consume_context(type, argument);
auto type_name = common::to_string(type, template_decl->getASTContext());
const auto type_name = config().simplify_template_type(
common::to_string(type, template_decl->getASTContext()));
argument.set_type(type_name);
const auto type_id = common::to_id(type_name);
argument.set_id(type_id);
const auto *class_template_specialization =