diff --git a/include/mrdocs/Metadata/Symbol/Function.hpp b/include/mrdocs/Metadata/Symbol/Function.hpp index b3786a9f5c..1a2adbab11 100644 --- a/include/mrdocs/Metadata/Symbol/Function.hpp +++ b/include/mrdocs/Metadata/Symbol/Function.hpp @@ -22,6 +22,7 @@ #include #include #include +#include #include #include @@ -137,6 +138,36 @@ struct FunctionSymbol final */ Optional FunctionObjectImpl; + /** Whether this function is listed on its primary's page. + + A presentation-layer flag set by `SpecializationFinalizer` + when *both* conditions hold: + + 1. This function is a template specialization (AST-local, + equivalent to `Template->specializationKind() != Primary`). + 2. Its primary is being extracted in + @ref ExtractionMode::Regular (cross-symbol, needs the + corpus). + + When set, the function is rendered in its primary's + "Specializations" section and suppressed from the parent + scope's listing. Orphan specializations (primary excluded + from extraction) fail condition 2 and keep the flag `false`, + so they remain reachable from the parent scope. The name + deliberately encodes the resulting placement rather than + the AST property in 1, which `Template` already exposes. + */ + bool IsListedOnPrimary = false; + + /** Specializations whose primary is this function. + + Populated by `SpecializationFinalizer` with the IDs of + function-template specializations referring to this + function as their primary. Sorted by referent name + then ID. + */ + std::vector Specializations; + //-------------------------------------------- /** Construct a function symbol with its ID. @@ -161,7 +192,8 @@ MRDOCS_DESCRIBE_STRUCT( IsNodiscard, IsExplicitObjectMemberFunction, Constexpr, OverloadedOperator, StorageClass, IsRecordMethod, IsVirtual, IsVirtualAsWritten, IsPure, IsConst, IsVolatile, IsFinal, - RefQualifier, Explicit, Attributes, FunctionObjectImpl) + RefQualifier, Explicit, Attributes, FunctionObjectImpl, + IsListedOnPrimary, Specializations) ) /** Map a vector of parameters to a @ref dom::Value object. diff --git a/include/mrdocs/Metadata/Symbol/Record.hpp b/include/mrdocs/Metadata/Symbol/Record.hpp index c173fd7407..598444cefa 100644 --- a/include/mrdocs/Metadata/Symbol/Record.hpp +++ b/include/mrdocs/Metadata/Symbol/Record.hpp @@ -5,6 +5,7 @@ // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception // // Copyright (c) 2023 Vinnie Falco (vinnie.falco@gmail.com) +// Copyright (c) 2026 Gennaro Prota (gennaro.prota@gmail.com) // // Official repository: https://github.com/cppalliance/mrdocs // @@ -74,6 +75,43 @@ struct RecordSymbol final */ std::vector Friends; + /** Whether this record is listed on its primary's page. + + A presentation-layer flag set by `SpecializationFinalizer` + when *both* conditions hold: + + 1. This record is a template specialization (AST-local, + equivalent to `Template->specializationKind() != Primary`). + 2. Its primary is being extracted in + @ref ExtractionMode::Regular (cross-symbol, needs the + corpus). + + When set, the record is rendered in its primary's + "Specializations" section and suppressed from the parent + scope's listing. Orphan specializations (primary excluded + from extraction) fail condition 2 and keep the flag `false`, + so they remain reachable from the parent scope. The name + deliberately encodes the resulting placement rather than + the AST property in 1, which `Template` already exposes. + */ + bool IsListedOnPrimary = false; + + /** Specializations whose primary is this record. + + Populated by `SpecializationFinalizer` with the IDs of + class-template specializations referring to this record + as their primary. Sorted by referent name then ID. + */ + std::vector Specializations; + + /** Deduction guides associated with this class template. + + Populated by `SpecializationFinalizer` with the IDs of + deduction guides that deduce this record. Sorted by + referent name then ID. + */ + std::vector DeductionGuides; + //-------------------------------------------- /** Create a record symbol bound to an ID. @@ -93,7 +131,8 @@ MRDOCS_DESCRIBE_STRUCT( RecordSymbol, (SymbolCommonBase), (KeyKind, Template, IsTypeDef, IsFinal, IsFinalDestructor, - Bases, Derived, Interface, Friends) + Bases, Derived, Interface, Friends, + IsListedOnPrimary, Specializations, DeductionGuides) ) /** Return the default accessibility for a record key kind. diff --git a/mrdocs.rnc b/mrdocs.rnc index 776acb447b..cd1f9e08c3 100644 --- a/mrdocs.rnc +++ b/mrdocs.rnc @@ -370,7 +370,10 @@ grammar BaseInfo*, element derived { SymbolID }*, RecordInterface?, - FriendInfo* + FriendInfo*, + element is-listed-on-primary { Bool }?, + element specializations { SymbolID }*, + element deduction-guides { SymbolID }* } BaseInfo = @@ -445,7 +448,9 @@ grammar element ref-qualifier { text }?, element explicit { text }?, element attributes { text }*, - element function-object-impl { SymbolID }? + element function-object-impl { SymbolID }?, + element is-listed-on-primary { Bool }?, + element specializations { SymbolID }* } #--------------------------------------------- diff --git a/share/mrdocs/addons/generator/common/partials/symbol.hbs b/share/mrdocs/addons/generator/common/partials/symbol.hbs index 5bbf6426a3..e42b42806f 100644 --- a/share/mrdocs/addons/generator/common/partials/symbol.hbs +++ b/share/mrdocs/addons/generator/common/partials/symbol.hbs @@ -20,6 +20,8 @@ {{> symbol/section/base-classes}} {{> symbol/section/protected-base-classes}} {{> symbol/section/members}} +{{> symbol/section/specializations}} +{{> symbol/section/deduction-guides}} {{> symbol/section/friends}} {{> symbol/section/using-directives}} {{> symbol/section/non-member-functions}} diff --git a/share/mrdocs/addons/generator/common/partials/symbol/section/deduction-guides.hbs b/share/mrdocs/addons/generator/common/partials/symbol/section/deduction-guides.hbs new file mode 100644 index 0000000000..d7fc414b7c --- /dev/null +++ b/share/mrdocs/addons/generator/common/partials/symbol/section/deduction-guides.hbs @@ -0,0 +1,4 @@ +{{! Deduction guides for this class template, listed on its own page rather than the parent scope. }} +{{#if symbol.deductionGuides}} +{{>symbol/members-table members=symbol.deductionGuides title="Deduction Guides"}} +{{/if}} diff --git a/share/mrdocs/addons/generator/common/partials/symbol/section/specializations.hbs b/share/mrdocs/addons/generator/common/partials/symbol/section/specializations.hbs new file mode 100644 index 0000000000..d9b1b85c7c --- /dev/null +++ b/share/mrdocs/addons/generator/common/partials/symbol/section/specializations.hbs @@ -0,0 +1,4 @@ +{{! Specializations of this primary, listed on its own page rather than the parent scope. }} +{{#if symbol.specializations}} +{{>symbol/members-table members=symbol.specializations title="Specializations"}} +{{/if}} diff --git a/share/mrdocs/addons/generator/common/partials/symbol/tranche.hbs b/share/mrdocs/addons/generator/common/partials/symbol/tranche.hbs index ae7c2b3a65..6536ebf5f7 100644 --- a/share/mrdocs/addons/generator/common/partials/symbol/tranche.hbs +++ b/share/mrdocs/addons/generator/common/partials/symbol/tranche.hbs @@ -7,6 +7,10 @@ Each value in the tranche is a list of symbols that belong to the tranche. + Template specializations and deduction guides are filtered out: they are + listed instead on the primary template's own page, via the dedicated + "Specializations" / "Deduction Guides" sections. + Expected Context: {Tranche Object} Example: @@ -17,23 +21,22 @@ {{#if is-namespace}} {{>symbol/members-table members=tranche.namespaces title="Namespaces"}} {{>symbol/members-table members=tranche.namespaceAliases title="Namespace Aliases"}} -{{>symbol/members-table members=tranche.records title=(concat (select label (concat label " ") "") "Types")}} +{{>symbol/members-table members=(reject_by tranche.records "isListedOnPrimary") title=(concat (select label (concat label " ") "") "Types")}} {{>symbol/members-table members=tranche.typedefs title=(concat (select label (concat label " ") "") "Type Aliases")}} {{>symbol/members-table members=tranche.enums title=(concat (select label (concat label " ") "") "Enums")}} -{{>symbol/members-table members=tranche.functions title="Functions"}} +{{>symbol/members-table members=(reject_by tranche.functions "isListedOnPrimary") title="Functions"}} {{>symbol/members-table members=tranche.variables title="Variables"}} {{>symbol/members-table members=tranche.concepts title="Concepts"}} -{{>symbol/members-table members=tranche.guides title=(concat (select label (concat label " ") "") "Deduction Guides")}} {{>symbol/members-table members=tranche.usings title=(concat (select label (concat label " ") "") "Using Declarations")}} {{else}} {{>symbol/members-table members=tranche.namespaceAliases title="Namespace Aliases"}} -{{>symbol/members-table members=tranche.records title=(concat (select label (concat label " ") "") "Types")}} +{{>symbol/members-table members=(reject_by tranche.records "isListedOnPrimary") title=(concat (select label (concat label " ") "") "Types")}} {{>symbol/members-table members=tranche.typedefs title=(concat (select label (concat label " ") "") "Type Aliases")}} {{>symbol/members-table members=tranche.enums title=(concat (select label (concat label " ") "") "Enums")}} -{{>symbol/members-table members=tranche.functions title=(concat (select label (concat label " ") "") "Member Functions")}} -{{>symbol/members-table members=tranche.staticFunctions title=(concat (select label (concat label " ") "") "Static Member Functions")}} +{{>symbol/members-table members=(reject_by tranche.functions "isListedOnPrimary") title=(concat (select label (concat label " ") "") "Member Functions")}} +{{>symbol/members-table members=(reject_by tranche.staticFunctions "isListedOnPrimary") title=(concat (select label (concat label " ") "") "Static Member Functions")}} {{>symbol/members-table members=tranche.variables title=(concat (select label (concat label " ") "") "Data Members")}} {{>symbol/members-table members=tranche.staticVariables title=(concat (select label (concat label " ") "") "Static Data Members")}} {{>symbol/members-table members=tranche.aliases title=(concat (select label (concat label " ") "") "Aliases")}} {{>symbol/members-table members=tranche.usings title=(concat (select label (concat label " ") "") "Using Declarations")}} -{{/if}} \ No newline at end of file +{{/if}} diff --git a/src/lib/CorpusImpl.cpp b/src/lib/CorpusImpl.cpp index 5877df7a6d..7ca0e49518 100644 --- a/src/lib/CorpusImpl.cpp +++ b/src/lib/CorpusImpl.cpp @@ -16,6 +16,7 @@ #include #include #include +#include #include #include #include @@ -1086,6 +1087,14 @@ CorpusImpl::finalize() finalizer.build(); } + // Populate primary -> specialization back-pointers + // and the deduction-guide lists on deduced records. + { + report::debug(" - Finalizing specializations"); + SpecializationFinalizer finalizer(*this); + finalizer.build(); + } + // Sort members: this runs unconditionally because // the members of some symbol types are always sorted. { diff --git a/src/lib/CorpusImpl.hpp b/src/lib/CorpusImpl.hpp index 567ef38ed0..9103665fc2 100644 --- a/src/lib/CorpusImpl.hpp +++ b/src/lib/CorpusImpl.hpp @@ -64,6 +64,7 @@ class CorpusImpl final : public Corpus friend class NamespacesFinalizer; friend class DerivedFinalizer; friend class FunctionObjectFinalizer; + friend class SpecializationFinalizer; public: /** Constructor. diff --git a/src/lib/Metadata/Finalizers/SpecializationFinalizer.cpp b/src/lib/Metadata/Finalizers/SpecializationFinalizer.cpp new file mode 100644 index 0000000000..89b7478b02 --- /dev/null +++ b/src/lib/Metadata/Finalizers/SpecializationFinalizer.cpp @@ -0,0 +1,171 @@ +// +// Licensed under the Apache License v2.0 with LLVM Exceptions. +// See https://llvm.org/LICENSE.txt for license information. +// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception +// +// Copyright (c) 2026 Gennaro Prota (gennaro.prota@gmail.com) +// +// Official repository: https://github.com/cppalliance/mrdocs +// + +#include "SpecializationFinalizer.hpp" +#include +#include +#include + +namespace mrdocs { + +namespace { + +// Return the `SymbolID` of the primary class template that a +// deduction guide deduces, or `SymbolID::invalid` when it +// cannot be determined. +SymbolID +deducedPrimaryID(GuideSymbol const& guide) +{ + if (guide.Deduced.valueless_after_move() + || !guide.Deduced->isNamed()) + { + return SymbolID::invalid; + } + NamedType const& namedType = guide.Deduced->asNamed(); + if (namedType.Name.valueless_after_move()) + { + return SymbolID::invalid; + } + return namedType.Name->id; +} + +} // (unnamed) + +void +SpecializationFinalizer:: +processRecord(RecordSymbol const& I) +{ + if (!I.Template + || I.Template->specializationKind() == TemplateSpecKind::Primary) + { + return; + } + Symbol* primary = corpus_.find(I.Template->Primary); + if (!primary + || primary->Extraction != ExtractionMode::Regular + || !primary->isRecord()) + { + return; + } + primary->asRecordPtr()->Specializations.push_back(I.id); + Symbol* self = corpus_.find(I.id); + MRDOCS_ASSERT(self && self->isRecord()); + self->asRecordPtr()->IsListedOnPrimary = true; +} + +void +SpecializationFinalizer:: +processFunction(FunctionSymbol const& I) +{ + if (!I.Template + || I.Template->specializationKind() == TemplateSpecKind::Primary) + { + return; + } + Symbol* primary = corpus_.find(I.Template->Primary); + if (!primary + || primary->Extraction != ExtractionMode::Regular + || !primary->isFunction()) + { + return; + } + primary->asFunctionPtr()->Specializations.push_back(I.id); + Symbol* self = corpus_.find(I.id); + MRDOCS_ASSERT(self && self->isFunction()); + self->asFunctionPtr()->IsListedOnPrimary = true; +} + +void +SpecializationFinalizer:: +processGuide(GuideSymbol const& I) +{ + SymbolID const deducedId = deducedPrimaryID(I); + if (!deducedId) + { + return; + } + Symbol* deduced = corpus_.find(deducedId); + if (!deduced + || deduced->Extraction != ExtractionMode::Regular + || !deduced->isRecord()) + { + return; + } + deduced->asRecordPtr()->DeductionGuides.push_back(I.id); +} + +void +SpecializationFinalizer:: +sortBackPointers() +{ + auto byReferentName = [this](SymbolID const& lhs, SymbolID const& rhs) + { + Symbol const* lhsInfo = corpus_.find(lhs); + Symbol const* rhsInfo = corpus_.find(rhs); + if (!lhsInfo || !rhsInfo) + { + return lhs < rhs; + } + if (lhsInfo->Name != rhsInfo->Name) + { + return lhsInfo->Name < rhsInfo->Name; + } + return lhs < rhs; + }; + for (Symbol const& I : corpus_) + { + if (I.isRecord()) + { + RecordSymbol const& R = I.asRecord(); + if (!R.Specializations.empty() || !R.DeductionGuides.empty()) + { + RecordSymbol* mut = corpus_.find(I.id)->asRecordPtr(); + std::ranges::sort(mut->Specializations, byReferentName); + std::ranges::sort(mut->DeductionGuides, byReferentName); + } + } + else if (I.isFunction()) + { + FunctionSymbol const& F = I.asFunction(); + if (!F.Specializations.empty()) + { + FunctionSymbol* mut = corpus_.find(I.id)->asFunctionPtr(); + std::ranges::sort(mut->Specializations, byReferentName); + } + } + } +} + +void +SpecializationFinalizer:: +build() +{ + for (Symbol const& I : corpus_) + { + if (I.Extraction == ExtractionMode::Regular) + { + if (I.isRecord()) + { + processRecord(I.asRecord()); + } + else if (I.isFunction()) + { + processFunction(I.asFunction()); + } + else if (I.isGuide()) + { + processGuide(I.asGuide()); + } + } + } + sortBackPointers(); +} + +} // mrdocs diff --git a/src/lib/Metadata/Finalizers/SpecializationFinalizer.hpp b/src/lib/Metadata/Finalizers/SpecializationFinalizer.hpp new file mode 100644 index 0000000000..a7638e0b4e --- /dev/null +++ b/src/lib/Metadata/Finalizers/SpecializationFinalizer.hpp @@ -0,0 +1,68 @@ +// +// Licensed under the Apache License v2.0 with LLVM Exceptions. +// See https://llvm.org/LICENSE.txt for license information. +// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception +// +// Copyright (c) 2026 Gennaro Prota (gennaro.prota@gmail.com) +// +// Official repository: https://github.com/cppalliance/mrdocs +// + +#ifndef MRDOCS_LIB_METADATA_FINALIZERS_SPECIALIZATIONFINALIZER_HPP +#define MRDOCS_LIB_METADATA_FINALIZERS_SPECIALIZATIONFINALIZER_HPP + +#include + +namespace mrdocs { + +/** Populate the back-pointers from primaries to their specializations. + + For each class- or function-template specialization extracted + in @ref ExtractionMode::Regular whose primary is also `Regular`, + appends the specialization's ID to the primary's + `Specializations` list and sets the specialization's + `IsListedOnPrimary` flag. For each `Regular` deduction guide, + appends its ID to the deduced record's `DeductionGuides` + list. The populated lists are sorted by referent name then ID. + + Orphan specializations - those whose primary is not extracted + in `Regular` mode - keep `IsListedOnPrimary` `false` so they + remain reachable from the parent scope's listing. +*/ +class SpecializationFinalizer +{ + CorpusImpl& corpus_; + + void processRecord(RecordSymbol const& I); + void processFunction(FunctionSymbol const& I); + void processGuide(GuideSymbol const& I); + + void sortBackPointers(); + +public: + /** Construct the finalizer bound to a corpus. + + @param corpus The corpus whose specialization and deduction-guide + back-pointers will be populated by `build`. + */ + explicit + SpecializationFinalizer(CorpusImpl& corpus) noexcept + : corpus_(corpus) + { + } + + /** Populate the back-pointers and sort them. + + Walks the corpus once, appending each `Regular` specialization + to its primary's `Specializations` list (when the primary is + also regular) and each `Regular` deduction guide to its deduced + record's `DeductionGuides` list. Specializations whose primary + will be rendered also get their `IsListedOnPrimary` flag set. + Finally sorts every populated vector by referent name then ID. + */ + void build(); +}; + +} // mrdocs + +#endif // MRDOCS_LIB_METADATA_FINALIZERS_SPECIALIZATIONFINALIZER_HPP diff --git a/src/lib/Support/Handlebars.cpp b/src/lib/Support/Handlebars.cpp index 417e6038c5..a9176adadb 100644 --- a/src/lib/Support/Handlebars.cpp +++ b/src/lib/Support/Handlebars.cpp @@ -4,6 +4,7 @@ // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception // // Copyright (c) 2023 Alan de Freitas (alandefreitas@gmail.com) +// Copyright (c) 2026 Gennaro Prota (gennaro.prota@gmail.com) // // Official repository: https://github.com/cppalliance/mrdocs // @@ -6473,6 +6474,60 @@ registerContainerHelpers(Handlebars& hbs) hbs.registerHelper("filter_by", filter_by_fn); + static auto reject_by_fn = dom::makeVariadicInvocable([]( + dom::Array const& arguments) -> dom::Value + { + dom::Value container = arguments.at(0); + std::vector keys; + for (std::size_t i = 1; i < arguments.size() - 1; ++i) + { + dom::Value key = arguments.at(i); + keys.push_back(key); + } + + // Given an array of objects, reject (exclude) those whose + // value at any of the given keys is truthy. Inverse of + // `filter_by`: non-object elements are kept, since they + // have no keys to test. + if (container.isArray()) + { + dom::Array const& arr = container.getArray(); + + std::vector res; + std::size_t const n = arr.size(); + for (std::size_t i = 0; i < n; ++i) { + dom::Value el = arr.at(i); + + if (!el.isObject()) + { + res.emplace_back(el); + continue; + } + + auto const matchIt = std::ranges::find_if( + keys, + [&](dom::Value const& key) + { + return + el.getObject().exists(key.getString()) && + el.getObject().get(key.getString()).isTruthy(); + }); + if (matchIt != keys.end()) + { + continue; + } + + res.emplace_back(el); + } + return dom::Array(res); + } + + // If the value is not an array, then we can't reject from it + return container; + }); + + hbs.registerHelper("reject_by", reject_by_fn); + static auto any_of_by_fn = dom::makeVariadicInvocable([]( dom::Array const& arguments) -> dom::Value { diff --git a/test-files/golden-tests/config/extract-friends/extract-friends.xml b/test-files/golden-tests/config/extract-friends/extract-friends.xml index d10d24ae21..db3644351b 100644 --- a/test-files/golden-tests/config/extract-friends/extract-friends.xml +++ b/test-files/golden-tests/config/extract-friends/extract-friends.xml @@ -67,6 +67,7 @@ + jTCZUvygQOxo6L+VfFZcAI6KU0Y= hash @@ -105,6 +106,7 @@ + 1 operator() diff --git a/test-files/golden-tests/config/extract-friends/no-extract-friends.xml b/test-files/golden-tests/config/extract-friends/no-extract-friends.xml index d6632f40c4..783eb57cb9 100644 --- a/test-files/golden-tests/config/extract-friends/no-extract-friends.xml +++ b/test-files/golden-tests/config/extract-friends/no-extract-friends.xml @@ -67,6 +67,7 @@ + jTCZUvygQOxo6L+VfFZcAI6KU0Y= hash @@ -105,6 +106,7 @@ + 1 operator() diff --git a/test-files/golden-tests/config/sfinae/record-two-params.xml b/test-files/golden-tests/config/sfinae/record-two-params.xml index 13f0f4e42a..748cc01cae 100644 --- a/test-files/golden-tests/config/sfinae/record-two-params.xml +++ b/test-files/golden-tests/config/sfinae/record-two-params.xml @@ -107,6 +107,8 @@ + E4XI9hgprdQN7ez3dhWgM/Nx9DQ= + 5GqWQ5IFiKuJx5FMNsyMUX5/JA0= writable_field_traits @@ -158,6 +160,7 @@ + 1 writable_field_traits @@ -209,5 +212,6 @@ + 1 diff --git a/test-files/golden-tests/config/sort-namespace-members-by/sort-namespace-members-by-location.xml b/test-files/golden-tests/config/sort-namespace-members-by/sort-namespace-members-by-location.xml index 81fc115fb9..b0404a3e72 100644 --- a/test-files/golden-tests/config/sort-namespace-members-by/sort-namespace-members-by-location.xml +++ b/test-files/golden-tests/config/sort-namespace-members-by/sort-namespace-members-by-location.xml @@ -93,6 +93,8 @@ + NLoLTepRVq6Wm8kqUGSEoM03TKg= + 1gG5jFtdo9Wauh4eNKJFnssDpFU= C @@ -138,6 +140,7 @@ + 1 C @@ -174,6 +177,7 @@ + 1 B @@ -210,6 +214,8 @@ + S+FvHbXPEwSCkNHoe9TC9L5a4Yk= + VwFE3CILPejPf11zTv20aat7w8Q= B @@ -255,6 +261,7 @@ + 1 B @@ -305,6 +312,7 @@ + 1 A @@ -1030,6 +1038,7 @@ normal + 5LjM4cXZ7IywLIZW1RtfpP7tNNk= g @@ -1088,6 +1097,7 @@ PEedgXj8uxMWKd/yZk6yqAz6boU= normal + 1 g diff --git a/test-files/golden-tests/config/sort-namespace-members-by/sort-namespace-members-by-name.xml b/test-files/golden-tests/config/sort-namespace-members-by/sort-namespace-members-by-name.xml index 58f9b39153..c0dd3907b9 100644 --- a/test-files/golden-tests/config/sort-namespace-members-by/sort-namespace-members-by-name.xml +++ b/test-files/golden-tests/config/sort-namespace-members-by/sort-namespace-members-by-name.xml @@ -101,6 +101,8 @@ + S+FvHbXPEwSCkNHoe9TC9L5a4Yk= + VwFE3CILPejPf11zTv20aat7w8Q= B @@ -146,6 +148,7 @@ + 1 B @@ -196,6 +199,7 @@ + 1 C @@ -241,6 +245,8 @@ + NLoLTepRVq6Wm8kqUGSEoM03TKg= + 1gG5jFtdo9Wauh4eNKJFnssDpFU= C @@ -277,6 +283,7 @@ + 1 C @@ -322,6 +329,7 @@ + 1 D @@ -1202,6 +1210,7 @@ normal + 5LjM4cXZ7IywLIZW1RtfpP7tNNk= g @@ -1260,6 +1269,7 @@ PEedgXj8uxMWKd/yZk6yqAz6boU= normal + 1 h diff --git a/test-files/golden-tests/config/sort/sort-members.xml b/test-files/golden-tests/config/sort/sort-members.xml index cffd20302d..3cf356479b 100644 --- a/test-files/golden-tests/config/sort/sort-members.xml +++ b/test-files/golden-tests/config/sort/sort-members.xml @@ -101,6 +101,8 @@ + S+FvHbXPEwSCkNHoe9TC9L5a4Yk= + VwFE3CILPejPf11zTv20aat7w8Q= B @@ -146,6 +148,7 @@ + 1 B @@ -196,6 +199,7 @@ + 1 C @@ -241,6 +245,8 @@ + NLoLTepRVq6Wm8kqUGSEoM03TKg= + 1gG5jFtdo9Wauh4eNKJFnssDpFU= C @@ -277,6 +283,7 @@ + 1 C @@ -322,6 +329,7 @@ + 1 D @@ -1202,6 +1210,7 @@ normal + 5LjM4cXZ7IywLIZW1RtfpP7tNNk= g @@ -1260,6 +1269,7 @@ PEedgXj8uxMWKd/yZk6yqAz6boU= normal + 1 h diff --git a/test-files/golden-tests/config/sort/unordered.xml b/test-files/golden-tests/config/sort/unordered.xml index b14dd090e9..001086d391 100644 --- a/test-files/golden-tests/config/sort/unordered.xml +++ b/test-files/golden-tests/config/sort/unordered.xml @@ -93,6 +93,8 @@ + NLoLTepRVq6Wm8kqUGSEoM03TKg= + 1gG5jFtdo9Wauh4eNKJFnssDpFU= C @@ -138,6 +140,7 @@ + 1 C @@ -174,6 +177,7 @@ + 1 B @@ -210,6 +214,8 @@ + S+FvHbXPEwSCkNHoe9TC9L5a4Yk= + VwFE3CILPejPf11zTv20aat7w8Q= B @@ -255,6 +261,7 @@ + 1 B @@ -305,6 +312,7 @@ + 1 A @@ -1318,6 +1326,7 @@ normal + 5LjM4cXZ7IywLIZW1RtfpP7tNNk= g @@ -1376,6 +1385,7 @@ PEedgXj8uxMWKd/yZk6yqAz6boU= normal + 1 g diff --git a/test-files/golden-tests/filters/symbol-type/nested-private-template.xml b/test-files/golden-tests/filters/symbol-type/nested-private-template.xml index c4da398361..d9a9bba964 100644 --- a/test-files/golden-tests/filters/symbol-type/nested-private-template.xml +++ b/test-files/golden-tests/filters/symbol-type/nested-private-template.xml @@ -83,6 +83,7 @@ + BCRU3eMBRSysyvFsjJj+0yg+Vfc= impl @@ -128,5 +129,6 @@ + 1 diff --git a/test-files/golden-tests/javadoc/copydoc/template-arguments.xml b/test-files/golden-tests/javadoc/copydoc/template-arguments.xml index 06b5f52acc..bf540ed784 100644 --- a/test-files/golden-tests/javadoc/copydoc/template-arguments.xml +++ b/test-files/golden-tests/javadoc/copydoc/template-arguments.xml @@ -364,6 +364,8 @@ + n2ekv7/9IraylJIibujZeExrML4= + zWh7HJU4uEOW6SQu1/X6/fBkFq0= B @@ -410,6 +412,7 @@ + 1 B @@ -460,6 +463,7 @@ + 1 C @@ -530,6 +534,8 @@ + w5ssdgUOfKNpDbPFUfSYesxFAc8= + +AYNfv3bBiQwa6z9A60U/F7dvXE= C @@ -581,6 +587,7 @@ + 1 C @@ -631,6 +638,7 @@ + 1 D diff --git a/test-files/golden-tests/symbols/function/sfinae.xml b/test-files/golden-tests/symbols/function/sfinae.xml index cfb4b1a3c9..38f9264779 100644 --- a/test-files/golden-tests/symbols/function/sfinae.xml +++ b/test-files/golden-tests/symbols/function/sfinae.xml @@ -129,6 +129,7 @@ + f80OzcD5UlgQ2KOvUj+MvoJcAFE= A @@ -181,6 +182,7 @@ + 1 S @@ -237,6 +239,7 @@ + g0UNZpdodOU5mGCtcpviXd8o6Vk= store @@ -338,6 +341,7 @@ + 1 store diff --git a/test-files/golden-tests/symbols/function/spec-mem-implicit-instantiation.xml b/test-files/golden-tests/symbols/function/spec-mem-implicit-instantiation.xml index 7d5ef71cf7..5ecedd2899 100644 --- a/test-files/golden-tests/symbols/function/spec-mem-implicit-instantiation.xml +++ b/test-files/golden-tests/symbols/function/spec-mem-implicit-instantiation.xml @@ -48,6 +48,9 @@ + AKwlChAOi+0ttIAPsD7uitS+gk0= + C6fFmGgpPJ7jgwKJA98mfx5cxts= + /vjeowK9rbOfBZNuMjVMRn2iGMo= B @@ -80,6 +83,7 @@ + kLfkJ6zwS7/fgRzTYaPfbg3WHg8= g @@ -135,6 +139,8 @@ + EyperGIiZ7cSv/PB2BApKjPRQVA= + xYK8qpEgWzczUMGnNUx+ozeBle0= h @@ -222,6 +228,7 @@ + 1 B @@ -323,6 +330,7 @@ + 1 j @@ -396,6 +404,7 @@ + 1 j @@ -482,6 +491,7 @@ + 1 B @@ -550,6 +560,7 @@ + 1 g @@ -678,6 +689,7 @@ + 1 B @@ -851,6 +863,7 @@ + 27+9TQyh1Vcx+C3POBLdyXJP8bo= k @@ -911,6 +924,7 @@ + 1 k diff --git a/test-files/golden-tests/symbols/guide/explicit-deduct-guide.xml b/test-files/golden-tests/symbols/guide/explicit-deduct-guide.xml index d314a0d2a3..a344780554 100644 --- a/test-files/golden-tests/symbols/guide/explicit-deduct-guide.xml +++ b/test-files/golden-tests/symbols/guide/explicit-deduct-guide.xml @@ -49,6 +49,10 @@ + AtQyLakD3CjcM24GabAbHMNgVU4= + YS/v8XQ/9ShQ2spNAh5EY33PN7s= + tkYkUU6H8cbFpCU7yBuvBLkT6dg= + 2IF4pOfGcA57GQDlE3PJgs7yeUs= X diff --git a/test-files/golden-tests/symbols/record/class-template-array-spec.xml b/test-files/golden-tests/symbols/record/class-template-array-spec.xml index b4cb8e2219..c7a5ef3dd3 100644 --- a/test-files/golden-tests/symbols/record/class-template-array-spec.xml +++ b/test-files/golden-tests/symbols/record/class-template-array-spec.xml @@ -86,6 +86,7 @@ + BImCLyzY3azoxv/pd8PtoMYhX4k= A @@ -158,5 +159,6 @@ + 1 diff --git a/test-files/golden-tests/symbols/record/class-template-partial-spec.xml b/test-files/golden-tests/symbols/record/class-template-partial-spec.xml index 25414be979..92c331bbc1 100644 --- a/test-files/golden-tests/symbols/record/class-template-partial-spec.xml +++ b/test-files/golden-tests/symbols/record/class-template-partial-spec.xml @@ -80,6 +80,8 @@ + RB9DBMAJDxjxuRQCinQOVPFSNek= + Y/lm1lkT88vf1Ml123mbuN6Fp2Y= B @@ -125,6 +127,7 @@ + 1 B @@ -177,5 +180,6 @@ + 1 diff --git a/test-files/golden-tests/symbols/record/class-template-spec.xml b/test-files/golden-tests/symbols/record/class-template-spec.xml index 538adeb9e5..a86eb98d87 100644 --- a/test-files/golden-tests/symbols/record/class-template-spec.xml +++ b/test-files/golden-tests/symbols/record/class-template-spec.xml @@ -50,6 +50,8 @@ + AKwlChAOi+0ttIAPsD7uitS+gk0= + y/8TvVlacBAIG2ds2aYgZE+zGUU= f @@ -110,6 +112,7 @@ + 1 g @@ -170,6 +173,7 @@ + 1 h @@ -225,6 +229,8 @@ + ZjUaxeOoGJ0Jol9Nmn7cGRE7RCo= + dydGCFMdrM4nOwuv3RCXqg2KCUA= f @@ -292,6 +298,7 @@ + 1 h @@ -359,6 +366,7 @@ + 1 g @@ -419,6 +427,8 @@ + qrcrkE8Br83XKNMh95Dvwpph/M8= + 6zS87fCNnLtFfHbRWEmcdeAT1Zg= f @@ -488,6 +498,7 @@ + 1 g @@ -564,6 +575,7 @@ + 1 h diff --git a/test-files/golden-tests/symbols/record/class-template-specializations-1.xml b/test-files/golden-tests/symbols/record/class-template-specializations-1.xml index 4a12a0927b..1aa58dc093 100644 --- a/test-files/golden-tests/symbols/record/class-template-specializations-1.xml +++ b/test-files/golden-tests/symbols/record/class-template-specializations-1.xml @@ -219,6 +219,17 @@ + JnRKKJOV9sM2/Wi7ytI5OenLTcs= + Lu2i8tgrw9I5p6DXmX9LfM8mVSo= + OsUzyKi8NDCZFI1r1y4+Ki/4H0s= + Xes4IqvFnQoGkxPlP4C4wtbjqxQ= + ZyL4aBHmvCmfq+HyxDSySKwRsdA= + eWg27/kfn86dUmPA26mcOo6kkfs= + g2iVCce1Dp6iPMyevfuMN/UU9F0= + p3PhPnVydwdupHBMAXlcrNQuiFo= + tcws+2wcXL0FEmvv7ZVXvxSkAaI= + zpDyI51RjdguXF8/9KXFrICQwEc= + 8snJ9gp5ca88/AsWGEnFe6Ln6RQ= S3 @@ -318,6 +329,9 @@ + J3UZDljdSJ1mGU9Js0JpA3TjVtc= + cV4O7e/J4xug1ZmsOQKwDVjE99M= + yPCRvP9B34hMThomBKlaCzkFM54= f4 @@ -439,6 +453,25 @@ + IhITMrVguwgsTFnxWSalhrn5lnw= + I29LgIfKHs2KVKydoPZ2XncISyM= + NnzxSBCBz0/s6OkCTTL/yDO06Go= + RFQpd+7V+unGQTgk13maA1YEoyY= + XLAZYk894KbFFFIzJpR6c2Fi870= + dO93MwJZmA5Fpzul37ZMH6F1ong= + fpqbvQR9NuaJY4fq9LHbiAsZKzw= + hpAmCOpzad0YvzIs/nrK1blINCo= + j53XjxydcG+wI0iK3mM8/acK5rY= + lmGGu3RmJh5DZfXs5nd811FPf14= + s40Z8yfzcJnCZSeYYV5sYlFzOxs= + tZqwapq24sWOnWsHAcGXH/3yX3Y= + uE1JLlP4kj18/7anYGDOOUyNK5M= + umZ8gPZZ+qTWuYY3zYO/hx1XCGI= + wpJv75dxyLgHOdHJsb50f1IIDVc= + 1ro4Sv8wGUNxysGIgXgcl9hcP68= + 51FuSsXmA0w505ZBRVkx0q/lmUk= + +J66oroZ92MSPf/1vk3672IXQRM= + +YuAVlOefcnfZIU1wckNM7lfNaA= S6 @@ -518,6 +551,17 @@ + GJK8oH0tb+kOcrLsJD4KLPgW01k= + J7tgsUhd+qpsq/85qkEgF1l14uk= + NkmHmT5oAR5xJObAVl4zdPrTJPk= + VxqDdgdkcw8E86ZiNolpXLlhyWs= + V/H0waQNmYhkbcgX6kBFOODNK64= + pbmVOgtPeZtTL7BQG/AM7NVsNdo= + r7aMtw1PqhcjWuGFP7pwiW2v0ks= + 1YtqF4WYT0uK7amUiCmJVk03Oog= + 3eTbiMMR3GPY7/xRty3EmJ9bdQU= + 3jBuzbuFB0fvpQa1ETvIXevGH2w= + 9PQcUNZCJePNJhT5t0prZNV/lHk= S8 @@ -617,6 +661,9 @@ + CvFJnK9Xu7B2Fbh91NqM0+gKVEU= + hwfbdkFRNunC/3V+s6HA5BwWiSQ= + 8PQtbs9xGpu1L+b0VOqfLlE6TnY= f9 @@ -1315,6 +1362,17 @@ + JnRKKJOV9sM2/Wi7ytI5OenLTcs= + Lu2i8tgrw9I5p6DXmX9LfM8mVSo= + OsUzyKi8NDCZFI1r1y4+Ki/4H0s= + Xes4IqvFnQoGkxPlP4C4wtbjqxQ= + ZyL4aBHmvCmfq+HyxDSySKwRsdA= + eWg27/kfn86dUmPA26mcOo6kkfs= + g2iVCce1Dp6iPMyevfuMN/UU9F0= + p3PhPnVydwdupHBMAXlcrNQuiFo= + tcws+2wcXL0FEmvv7ZVXvxSkAaI= + zpDyI51RjdguXF8/9KXFrICQwEc= + 8snJ9gp5ca88/AsWGEnFe6Ln6RQ= S3 @@ -1414,6 +1472,9 @@ + J3UZDljdSJ1mGU9Js0JpA3TjVtc= + cV4O7e/J4xug1ZmsOQKwDVjE99M= + yPCRvP9B34hMThomBKlaCzkFM54= f4 @@ -1535,6 +1596,25 @@ + IhITMrVguwgsTFnxWSalhrn5lnw= + I29LgIfKHs2KVKydoPZ2XncISyM= + NnzxSBCBz0/s6OkCTTL/yDO06Go= + RFQpd+7V+unGQTgk13maA1YEoyY= + XLAZYk894KbFFFIzJpR6c2Fi870= + dO93MwJZmA5Fpzul37ZMH6F1ong= + fpqbvQR9NuaJY4fq9LHbiAsZKzw= + hpAmCOpzad0YvzIs/nrK1blINCo= + j53XjxydcG+wI0iK3mM8/acK5rY= + lmGGu3RmJh5DZfXs5nd811FPf14= + s40Z8yfzcJnCZSeYYV5sYlFzOxs= + tZqwapq24sWOnWsHAcGXH/3yX3Y= + uE1JLlP4kj18/7anYGDOOUyNK5M= + umZ8gPZZ+qTWuYY3zYO/hx1XCGI= + wpJv75dxyLgHOdHJsb50f1IIDVc= + 1ro4Sv8wGUNxysGIgXgcl9hcP68= + 51FuSsXmA0w505ZBRVkx0q/lmUk= + +J66oroZ92MSPf/1vk3672IXQRM= + +YuAVlOefcnfZIU1wckNM7lfNaA= S6 @@ -1614,6 +1694,17 @@ + GJK8oH0tb+kOcrLsJD4KLPgW01k= + J7tgsUhd+qpsq/85qkEgF1l14uk= + NkmHmT5oAR5xJObAVl4zdPrTJPk= + VxqDdgdkcw8E86ZiNolpXLlhyWs= + V/H0waQNmYhkbcgX6kBFOODNK64= + pbmVOgtPeZtTL7BQG/AM7NVsNdo= + r7aMtw1PqhcjWuGFP7pwiW2v0ks= + 1YtqF4WYT0uK7amUiCmJVk03Oog= + 3eTbiMMR3GPY7/xRty3EmJ9bdQU= + 3jBuzbuFB0fvpQa1ETvIXevGH2w= + 9PQcUNZCJePNJhT5t0prZNV/lHk= S8 @@ -1713,6 +1804,9 @@ + CvFJnK9Xu7B2Fbh91NqM0+gKVEU= + hwfbdkFRNunC/3V+s6HA5BwWiSQ= + 8PQtbs9xGpu1L+b0VOqfLlE6TnY= f9 @@ -2352,6 +2446,17 @@ + JnRKKJOV9sM2/Wi7ytI5OenLTcs= + Lu2i8tgrw9I5p6DXmX9LfM8mVSo= + OsUzyKi8NDCZFI1r1y4+Ki/4H0s= + Xes4IqvFnQoGkxPlP4C4wtbjqxQ= + ZyL4aBHmvCmfq+HyxDSySKwRsdA= + eWg27/kfn86dUmPA26mcOo6kkfs= + g2iVCce1Dp6iPMyevfuMN/UU9F0= + p3PhPnVydwdupHBMAXlcrNQuiFo= + tcws+2wcXL0FEmvv7ZVXvxSkAaI= + zpDyI51RjdguXF8/9KXFrICQwEc= + 8snJ9gp5ca88/AsWGEnFe6Ln6RQ= S3 @@ -2451,6 +2556,9 @@ + J3UZDljdSJ1mGU9Js0JpA3TjVtc= + cV4O7e/J4xug1ZmsOQKwDVjE99M= + yPCRvP9B34hMThomBKlaCzkFM54= f4 @@ -2572,6 +2680,25 @@ + IhITMrVguwgsTFnxWSalhrn5lnw= + I29LgIfKHs2KVKydoPZ2XncISyM= + NnzxSBCBz0/s6OkCTTL/yDO06Go= + RFQpd+7V+unGQTgk13maA1YEoyY= + XLAZYk894KbFFFIzJpR6c2Fi870= + dO93MwJZmA5Fpzul37ZMH6F1ong= + fpqbvQR9NuaJY4fq9LHbiAsZKzw= + hpAmCOpzad0YvzIs/nrK1blINCo= + j53XjxydcG+wI0iK3mM8/acK5rY= + lmGGu3RmJh5DZfXs5nd811FPf14= + s40Z8yfzcJnCZSeYYV5sYlFzOxs= + tZqwapq24sWOnWsHAcGXH/3yX3Y= + uE1JLlP4kj18/7anYGDOOUyNK5M= + umZ8gPZZ+qTWuYY3zYO/hx1XCGI= + wpJv75dxyLgHOdHJsb50f1IIDVc= + 1ro4Sv8wGUNxysGIgXgcl9hcP68= + 51FuSsXmA0w505ZBRVkx0q/lmUk= + +J66oroZ92MSPf/1vk3672IXQRM= + +YuAVlOefcnfZIU1wckNM7lfNaA= S6 @@ -2651,6 +2778,17 @@ + GJK8oH0tb+kOcrLsJD4KLPgW01k= + J7tgsUhd+qpsq/85qkEgF1l14uk= + NkmHmT5oAR5xJObAVl4zdPrTJPk= + VxqDdgdkcw8E86ZiNolpXLlhyWs= + V/H0waQNmYhkbcgX6kBFOODNK64= + pbmVOgtPeZtTL7BQG/AM7NVsNdo= + r7aMtw1PqhcjWuGFP7pwiW2v0ks= + 1YtqF4WYT0uK7amUiCmJVk03Oog= + 3eTbiMMR3GPY7/xRty3EmJ9bdQU= + 3jBuzbuFB0fvpQa1ETvIXevGH2w= + 9PQcUNZCJePNJhT5t0prZNV/lHk= S8 @@ -2750,6 +2888,9 @@ + CvFJnK9Xu7B2Fbh91NqM0+gKVEU= + hwfbdkFRNunC/3V+s6HA5BwWiSQ= + 8PQtbs9xGpu1L+b0VOqfLlE6TnY= f9 @@ -2980,6 +3121,17 @@ + JnRKKJOV9sM2/Wi7ytI5OenLTcs= + Lu2i8tgrw9I5p6DXmX9LfM8mVSo= + OsUzyKi8NDCZFI1r1y4+Ki/4H0s= + Xes4IqvFnQoGkxPlP4C4wtbjqxQ= + ZyL4aBHmvCmfq+HyxDSySKwRsdA= + eWg27/kfn86dUmPA26mcOo6kkfs= + g2iVCce1Dp6iPMyevfuMN/UU9F0= + p3PhPnVydwdupHBMAXlcrNQuiFo= + tcws+2wcXL0FEmvv7ZVXvxSkAaI= + zpDyI51RjdguXF8/9KXFrICQwEc= + 8snJ9gp5ca88/AsWGEnFe6Ln6RQ= S3 @@ -3079,6 +3231,9 @@ + J3UZDljdSJ1mGU9Js0JpA3TjVtc= + cV4O7e/J4xug1ZmsOQKwDVjE99M= + yPCRvP9B34hMThomBKlaCzkFM54= f4 @@ -3200,6 +3355,25 @@ + IhITMrVguwgsTFnxWSalhrn5lnw= + I29LgIfKHs2KVKydoPZ2XncISyM= + NnzxSBCBz0/s6OkCTTL/yDO06Go= + RFQpd+7V+unGQTgk13maA1YEoyY= + XLAZYk894KbFFFIzJpR6c2Fi870= + dO93MwJZmA5Fpzul37ZMH6F1ong= + fpqbvQR9NuaJY4fq9LHbiAsZKzw= + hpAmCOpzad0YvzIs/nrK1blINCo= + j53XjxydcG+wI0iK3mM8/acK5rY= + lmGGu3RmJh5DZfXs5nd811FPf14= + s40Z8yfzcJnCZSeYYV5sYlFzOxs= + tZqwapq24sWOnWsHAcGXH/3yX3Y= + uE1JLlP4kj18/7anYGDOOUyNK5M= + umZ8gPZZ+qTWuYY3zYO/hx1XCGI= + wpJv75dxyLgHOdHJsb50f1IIDVc= + 1ro4Sv8wGUNxysGIgXgcl9hcP68= + 51FuSsXmA0w505ZBRVkx0q/lmUk= + +J66oroZ92MSPf/1vk3672IXQRM= + +YuAVlOefcnfZIU1wckNM7lfNaA= S6 @@ -3279,6 +3453,17 @@ + GJK8oH0tb+kOcrLsJD4KLPgW01k= + J7tgsUhd+qpsq/85qkEgF1l14uk= + NkmHmT5oAR5xJObAVl4zdPrTJPk= + VxqDdgdkcw8E86ZiNolpXLlhyWs= + V/H0waQNmYhkbcgX6kBFOODNK64= + pbmVOgtPeZtTL7BQG/AM7NVsNdo= + r7aMtw1PqhcjWuGFP7pwiW2v0ks= + 1YtqF4WYT0uK7amUiCmJVk03Oog= + 3eTbiMMR3GPY7/xRty3EmJ9bdQU= + 3jBuzbuFB0fvpQa1ETvIXevGH2w= + 9PQcUNZCJePNJhT5t0prZNV/lHk= S8 @@ -3378,6 +3563,9 @@ + CvFJnK9Xu7B2Fbh91NqM0+gKVEU= + hwfbdkFRNunC/3V+s6HA5BwWiSQ= + 8PQtbs9xGpu1L+b0VOqfLlE6TnY= f9 @@ -4996,6 +5184,47 @@ + ANhUz0/2S6fRsXsZFhXPTPyPfAE= + AhWlDEmWhkTeQuWWCaZwMGCG5HQ= + A9DWlv0rbuFs3A9eHqZTaJDN7Uk= + ByHV/GlyHOt9h6ZVKpsDi/DkBkM= + FREf1tucqdONQ71W3hB/Sf/Fbw4= + IG7byGfx+stnhACpeGR2toLyv7U= + IKgocAXkFMvNmDD+p5dZpSBSRHI= + IbslzK4eUJj1gUsgbS4h/0Axavg= + IxCiCl8tf7r2/CmQWZiWxFHf7+g= + MUilGFE5YvyMgRjHIcQZ38yyl2c= + MYFk6ANWkex8j7vBuMpAqchgYIY= + MyTy/GXkOXKOTiJVqHAVVvaU4es= + PA+4gdvi0ChhszyGuOL6zlYXHpk= + Rh5ZoB5qF98iwmDPqUPnsyKkTcs= + UUBd87/k0jse5896L03eJ4N0l+c= + UpHebkkBv0Q2s1ECAoKTf79hJ0Q= + Up/SfnuYTQw+Y6klSO3f5z86DOY= + WK6dfZ+3VdrJbp4Egq7SCGyoAF8= + Wu710hbNOx84LbfjQUEgqKkZ2dA= + a69mw641E3cHVf6ovpLtJxTpmps= + c7NNZfjOZ8Ztuw0u26xL/h7UKvA= + eiJusMAs3cvoF4DWqUBlAfXzYcA= + flxREiXFL5ObY0xUAxojj+jvR54= + hwWIBHTi29w+6bJar0PyQvwnZWw= + kn1OyT1FzAvXXJMp4nKleaEX+5c= + nJGs54s6oYf7fHzIpo0tyaCSH9M= + niyoFejCRrpY1Aa9GHwGMnaDfsQ= + nkoZM9sg9xpibNb1eDSyhqn/Ato= + nuqq8wSa/4T9E2xaPl/SzBPbekM= + oXfsqUlMzPbEZZJ7K+iZYQj3wko= + oj8XjM2vuWbeoc2sBpfsIoleCao= + o06yQpJHyCkZyFI44/nN8/tpgT8= + pxo3Lx5X+FdLdaGOmXmAiuNVQME= + tuaR3CreZXFWLNOiRe6vUMcdi/0= + uoCdOuqB1v1s6rvl4wDWcLrD4LA= + vt6SAnqggizkWUqtSC5b9rVm+Qw= + xONzwxGiMBJrTYA5eosi4pOC0n0= + x7MfNbWaSdnUCRBlHt+nSvOlEPw= + zYIKjNzi/kYNKvtrTXu8BhQTFt8= + 1gjCMmREpyWTXEFMqDWbHTY9s+Q= + 7v/tytUkZe7COeYW1bbrzC9LRio= S1 @@ -5075,6 +5304,17 @@ + JnRKKJOV9sM2/Wi7ytI5OenLTcs= + Lu2i8tgrw9I5p6DXmX9LfM8mVSo= + OsUzyKi8NDCZFI1r1y4+Ki/4H0s= + Xes4IqvFnQoGkxPlP4C4wtbjqxQ= + ZyL4aBHmvCmfq+HyxDSySKwRsdA= + eWg27/kfn86dUmPA26mcOo6kkfs= + g2iVCce1Dp6iPMyevfuMN/UU9F0= + p3PhPnVydwdupHBMAXlcrNQuiFo= + tcws+2wcXL0FEmvv7ZVXvxSkAaI= + zpDyI51RjdguXF8/9KXFrICQwEc= + 8snJ9gp5ca88/AsWGEnFe6Ln6RQ= S3 @@ -5174,6 +5414,9 @@ + J3UZDljdSJ1mGU9Js0JpA3TjVtc= + cV4O7e/J4xug1ZmsOQKwDVjE99M= + yPCRvP9B34hMThomBKlaCzkFM54= f4 @@ -5295,6 +5538,25 @@ + IhITMrVguwgsTFnxWSalhrn5lnw= + I29LgIfKHs2KVKydoPZ2XncISyM= + NnzxSBCBz0/s6OkCTTL/yDO06Go= + RFQpd+7V+unGQTgk13maA1YEoyY= + XLAZYk894KbFFFIzJpR6c2Fi870= + dO93MwJZmA5Fpzul37ZMH6F1ong= + fpqbvQR9NuaJY4fq9LHbiAsZKzw= + hpAmCOpzad0YvzIs/nrK1blINCo= + j53XjxydcG+wI0iK3mM8/acK5rY= + lmGGu3RmJh5DZfXs5nd811FPf14= + s40Z8yfzcJnCZSeYYV5sYlFzOxs= + tZqwapq24sWOnWsHAcGXH/3yX3Y= + uE1JLlP4kj18/7anYGDOOUyNK5M= + umZ8gPZZ+qTWuYY3zYO/hx1XCGI= + wpJv75dxyLgHOdHJsb50f1IIDVc= + 1ro4Sv8wGUNxysGIgXgcl9hcP68= + 51FuSsXmA0w505ZBRVkx0q/lmUk= + +J66oroZ92MSPf/1vk3672IXQRM= + +YuAVlOefcnfZIU1wckNM7lfNaA= S6 @@ -5374,6 +5636,17 @@ + GJK8oH0tb+kOcrLsJD4KLPgW01k= + J7tgsUhd+qpsq/85qkEgF1l14uk= + NkmHmT5oAR5xJObAVl4zdPrTJPk= + VxqDdgdkcw8E86ZiNolpXLlhyWs= + V/H0waQNmYhkbcgX6kBFOODNK64= + pbmVOgtPeZtTL7BQG/AM7NVsNdo= + r7aMtw1PqhcjWuGFP7pwiW2v0ks= + 1YtqF4WYT0uK7amUiCmJVk03Oog= + 3eTbiMMR3GPY7/xRty3EmJ9bdQU= + 3jBuzbuFB0fvpQa1ETvIXevGH2w= + 9PQcUNZCJePNJhT5t0prZNV/lHk= S8 @@ -5473,6 +5746,9 @@ + CvFJnK9Xu7B2Fbh91NqM0+gKVEU= + hwfbdkFRNunC/3V+s6HA5BwWiSQ= + 8PQtbs9xGpu1L+b0VOqfLlE6TnY= f9 @@ -5620,6 +5896,7 @@ + 1 S0 @@ -5654,6 +5931,7 @@ + 1 S1 @@ -5766,6 +6044,7 @@ + 1 S3 @@ -6000,6 +6279,7 @@ + 1 S1 @@ -6112,6 +6392,7 @@ + 1 S3 @@ -6218,6 +6499,7 @@ + 1 f2 @@ -6371,6 +6653,7 @@ + 1 S1 @@ -6485,6 +6768,7 @@ + 1 S3 @@ -6603,6 +6887,7 @@ + 1 S4 @@ -6650,6 +6935,7 @@ + 1 f2 @@ -6804,6 +7090,7 @@ + 1 S1 @@ -6943,6 +7230,7 @@ + 1 S1 @@ -7049,6 +7337,7 @@ + 1 f0 @@ -7106,6 +7395,7 @@ + 1 S1 @@ -7247,6 +7537,7 @@ + 1 S1 @@ -7365,6 +7656,7 @@ + 1 S5 @@ -7412,6 +7704,7 @@ + 1 f0 @@ -7470,6 +7763,7 @@ + 1 S1 @@ -7577,6 +7871,7 @@ + 1 S6 @@ -7689,6 +7984,7 @@ + 1 S1 @@ -7796,6 +8092,7 @@ + 1 S6 @@ -7984,6 +8281,7 @@ + 1 S1 @@ -8091,6 +8389,7 @@ + 1 S6 @@ -8214,6 +8513,7 @@ + 1 S7 @@ -8261,6 +8561,7 @@ + 1 f6 @@ -8364,6 +8665,7 @@ + 1 S1 @@ -8579,6 +8881,7 @@ + 1 S1 @@ -8686,6 +8989,7 @@ + 1 S6 @@ -8795,6 +9099,7 @@ + 1 f6 @@ -8899,6 +9204,7 @@ + 1 S1 @@ -9006,6 +9312,7 @@ + 1 S6 @@ -9117,6 +9424,7 @@ + 1 S8 @@ -9325,6 +9633,7 @@ + 1 S1 @@ -9432,6 +9741,7 @@ + 1 S6 @@ -9544,6 +9854,7 @@ + 1 S8 @@ -9752,6 +10063,7 @@ + 1 S1 @@ -9859,6 +10171,7 @@ + 1 S6 @@ -9973,6 +10286,7 @@ + 1 S8 @@ -10091,6 +10405,7 @@ + 1 S9 @@ -10138,6 +10453,7 @@ + 1 f7 @@ -10264,6 +10580,7 @@ + 1 S1 @@ -10373,6 +10690,7 @@ + 1 f1 @@ -10504,6 +10822,7 @@ + 1 S1 @@ -10611,6 +10930,7 @@ + 1 S6 @@ -10723,6 +11043,7 @@ + 1 S8 @@ -10829,6 +11150,7 @@ + 1 f7 @@ -10955,6 +11277,7 @@ + 1 S1 @@ -11078,6 +11401,7 @@ + 1 S2 @@ -11125,6 +11449,7 @@ + 1 f1 @@ -11255,6 +11580,7 @@ + 1 S1 @@ -11366,6 +11692,7 @@ + 1 S3 @@ -11609,6 +11936,7 @@ + 1 S0 @@ -11652,6 +11980,7 @@ + 1 S1 @@ -11772,6 +12101,7 @@ + 1 S3 @@ -12009,6 +12339,7 @@ + 1 S1 @@ -12130,6 +12461,7 @@ + 1 S3 @@ -12367,6 +12699,7 @@ + 1 S1 @@ -12488,6 +12821,7 @@ + 1 S3 @@ -12725,6 +13059,7 @@ + 1 S1 @@ -12867,6 +13202,7 @@ + 1 S1 @@ -13008,6 +13344,7 @@ + 1 S1 @@ -13225,6 +13562,7 @@ + 1 S1 @@ -13367,6 +13705,7 @@ + 1 S1 @@ -13483,6 +13822,7 @@ + 1 S6 @@ -13673,6 +14013,7 @@ + 1 S1 @@ -13789,6 +14130,7 @@ + 1 S6 @@ -13979,6 +14321,7 @@ + 1 S1 @@ -14095,6 +14438,7 @@ + 1 S6 @@ -14285,6 +14629,7 @@ + 1 S1 @@ -14502,6 +14847,7 @@ + 1 S1 @@ -14618,6 +14964,7 @@ + 1 S6 @@ -14809,6 +15156,7 @@ + 1 S1 @@ -14925,6 +15273,7 @@ + 1 S6 @@ -15045,6 +15394,7 @@ + 1 S8 @@ -15280,6 +15630,7 @@ + 1 S1 @@ -15396,6 +15747,7 @@ + 1 S6 @@ -15516,6 +15868,7 @@ + 1 S8 @@ -15727,6 +16080,7 @@ + 1 S1 @@ -15843,6 +16197,7 @@ + 1 S6 @@ -15964,6 +16319,7 @@ + 1 S8 @@ -16174,6 +16530,7 @@ + 1 S1 @@ -16392,6 +16749,7 @@ + 1 S1 @@ -16508,6 +16866,7 @@ + 1 S6 @@ -16629,6 +16988,7 @@ + 1 S8 @@ -16839,6 +17199,7 @@ + 1 S1 @@ -17056,6 +17417,7 @@ + 1 S1 @@ -17176,6 +17538,7 @@ + 1 S3 @@ -17441,5 +17804,6 @@ + 1 diff --git a/test-files/golden-tests/symbols/record/class-template-specializations-2.xml b/test-files/golden-tests/symbols/record/class-template-specializations-2.xml index 2fac92c30d..8da9533449 100644 --- a/test-files/golden-tests/symbols/record/class-template-specializations-2.xml +++ b/test-files/golden-tests/symbols/record/class-template-specializations-2.xml @@ -44,6 +44,9 @@ + K6BawvzqAtXZLU2Hm0qPq6aGiS8= + Nkvb8FA0/0YIpaybicEkWLwFOPo= + bcCFiKKGBMnWrAf/IBu1R/sC07s= A @@ -83,6 +86,7 @@ + 1 D @@ -116,6 +120,8 @@ + RdjbfZA0y514GFSR1pCAjUyfq24= + flW1A8++hJYAIoinZHMJ/EargvI= E @@ -147,6 +153,8 @@ + HzSR9lAhcaSZke6x6ggUIqnawQw= + TpBRSCUm33PjLoWxW50FZsR1GSM= E @@ -191,6 +199,7 @@ + 1 F @@ -253,6 +262,7 @@ + 1 G @@ -284,6 +294,7 @@ + zPgrcrIOrcVWP7Qpw8x3Zl2fIpI= G @@ -327,6 +338,7 @@ + 1 D @@ -365,6 +377,7 @@ + 1 E @@ -435,6 +448,7 @@ + 1 F @@ -506,6 +520,7 @@ + 1 B @@ -573,6 +588,7 @@ + 1 B @@ -612,6 +628,7 @@ + 1 C @@ -688,6 +705,7 @@ + 1 B @@ -719,6 +737,10 @@ + HP4W/UatJ6BMg+LZKC5cQM4kCzw= + WeO5ITJRmNS4Q90O2A5hmw/KZc8= + vuv6bo9spUYsHZ3uwTm6i6UxSNI= + 3isZeaf80hT1/O3yko6EPBPmq8s= B @@ -755,6 +777,7 @@ + 1 B @@ -799,6 +822,7 @@ + 1 C diff --git a/test-files/golden-tests/symbols/record/class-template-specializations-3.xml b/test-files/golden-tests/symbols/record/class-template-specializations-3.xml index 47ad39dfb3..3408eb2ef1 100644 --- a/test-files/golden-tests/symbols/record/class-template-specializations-3.xml +++ b/test-files/golden-tests/symbols/record/class-template-specializations-3.xml @@ -48,6 +48,10 @@ + C6fFmGgpPJ7jgwKJA98mfx5cxts= + GFV3P/JtfrnQwjOLVfI9VbJpd9U= + eeh34/7lF7rCmE7zXKBrUC7mz3A= + y/8TvVlacBAIG2ds2aYgZE+zGUU= B @@ -82,6 +86,12 @@ + AmrHzqMyGcAD714oirSEx/XCTwk= + Ax52oDYNHKdb/kayrTPXtP7EnLo= + Pna+OT/o27zekcoRTFxKtb5m+BQ= + X9RyjucPb3aRFUq3aZCNE4g/ZVE= + fSC2izK+T4vA4Kndw3xNjCTDpoQ= + gNJJgsCrBHI+de6/WxRWfc6QUSQ= C @@ -137,6 +147,8 @@ + E3rBDckOC8QkP+2YLNtbMxg69mc= + 8gtdVs8Zc/2hE1ugmc5SJaowDrk= D @@ -173,6 +185,7 @@ + 1 B @@ -212,6 +225,7 @@ + 1 C @@ -267,6 +281,11 @@ + FQCRWOnd4VbpVowmyiWSRR2l2cA= + P+rxL5vI4ct+gzn9YkO97Pt7Ras= + rzmzIDLemEwnRqvVCiQsLO9rHE4= + 2n2EC+ZzX4R61vVgqMqWD1h4Fqc= + 9bJvdwRZpk2+HRV+Az3lOybs1Wc= D @@ -303,6 +322,7 @@ + 1 A @@ -341,6 +361,7 @@ + 1 B @@ -411,6 +432,7 @@ + 1 C @@ -502,6 +524,7 @@ + 1 A @@ -541,6 +564,7 @@ + 1 B @@ -581,6 +605,8 @@ + jvnZWmA3eB78JX83nJawhD8NGhw= + 3fOXhba/en8Im2gUSThzllitRc0= C @@ -636,6 +662,8 @@ + NNxnP63PrqW2AkyLFpJx0uaNuTk= + vu+upAyFdAr9NpomAT9maDrr5VU= D @@ -672,6 +700,7 @@ + 1 B @@ -711,6 +740,7 @@ + 1 C @@ -802,6 +832,7 @@ + 1 B @@ -841,6 +872,7 @@ + 1 C @@ -932,6 +964,7 @@ + 1 A @@ -971,6 +1004,7 @@ + 1 B @@ -1041,6 +1075,7 @@ + 1 C @@ -1132,6 +1167,7 @@ + 1 B @@ -1171,6 +1207,7 @@ + 1 C @@ -1226,6 +1263,7 @@ + eYdoT3vlHlbkG+t3+ckhZAqrnlY= D @@ -1262,6 +1300,7 @@ + 1 A @@ -1301,6 +1340,7 @@ + 1 B @@ -1371,6 +1411,7 @@ + 1 C @@ -1462,6 +1503,7 @@ + 1 B @@ -1501,6 +1543,7 @@ + 1 C @@ -1592,6 +1635,7 @@ + 1 E diff --git a/test-files/golden-tests/symbols/record/specializations-and-guides.adoc b/test-files/golden-tests/symbols/record/specializations-and-guides.adoc new file mode 100644 index 0000000000..649584ca28 --- /dev/null +++ b/test-files/golden-tests/symbols/record/specializations-and-guides.adoc @@ -0,0 +1,124 @@ += Reference +:mrdocs: + +[#index] +== Global namespace + +=== Types + +[cols="1,4"] +|=== +| Name| Description +| link:#A-0e[`A`] +| Primary class template. +| link:#B-00[`B`] +| Class template with a deduction guide. +|=== + + +[#A-0e] +== A + +Primary class template. + +=== Synopsis + +Declared in `<specializations‐and‐guides.cpp>` + +[source,cpp,subs="verbatim,replacements,macros,-callouts"] +---- +template<typename T> +struct A; +---- + +=== Member Functions + +[cols="1,4"] +|=== +| Name| Description +| link:#A-0e-f[`f`] +| A member function. +|=== + + +=== Specializations + +[cols="1,4"] +|=== +| Name| Description +| link:#A-00[`A<int>`] +| Explicit specialization of the primary. +|=== + + +[#A-0e-f] +== link:#A-0e[A]::f + +A member function. + +=== Synopsis + +Declared in `<specializations‐and‐guides.cpp>` + +[source,cpp,subs="verbatim,replacements,macros,-callouts"] +---- +void +f(); +---- + +[#A-00] +== link:#A-0e[A]<int> + +Explicit specialization of the primary. + +=== Synopsis + +Declared in `<specializations‐and‐guides.cpp>` + +[source,cpp,subs="verbatim,replacements,macros,-callouts"] +---- +template<> +struct link:#A-0e[A]<int>; +---- + +[#B-00] +== B + +Class template with a deduction guide. + +=== Synopsis + +Declared in `<specializations‐and‐guides.cpp>` + +[source,cpp,subs="verbatim,replacements,macros,-callouts"] +---- +template<int> +struct B; +---- + +=== Deduction Guides + +[cols="1,4"] +|=== +| Name| Description +| link:#B-0c[`B<0>`] +| Deduction guide for B. +|=== + + +[#B-0c] +== link:#B-00[B<0>] + +Deduction guide for B. + +=== Synopsis + +Declared in `<specializations‐and‐guides.cpp>` + +[source,cpp,subs="verbatim,replacements,macros,-callouts"] +---- +link:#B-00[B<0>](bool) -> link:#B-00[B<0>]; +---- + + +[.small]#Created with https://www.mrdocs.com[MrDocs]# diff --git a/test-files/golden-tests/symbols/record/specializations-and-guides.cpp b/test-files/golden-tests/symbols/record/specializations-and-guides.cpp new file mode 100644 index 0000000000..771190d429 --- /dev/null +++ b/test-files/golden-tests/symbols/record/specializations-and-guides.cpp @@ -0,0 +1,22 @@ +/// Primary class template. +template +struct A +{ + /// A member function. + void f(); +}; + +/// Explicit specialization of the primary. +template <> +struct A +{ +}; + +/// Class template with a deduction guide. +template +struct B +{ +}; + +/// Deduction guide for B. +B(bool) -> B<0>; diff --git a/test-files/golden-tests/symbols/record/specializations-and-guides.yml b/test-files/golden-tests/symbols/record/specializations-and-guides.yml new file mode 100644 index 0000000000..17ffc7a6f1 --- /dev/null +++ b/test-files/golden-tests/symbols/record/specializations-and-guides.yml @@ -0,0 +1 @@ +generator: adoc diff --git a/test-files/golden-tests/symbols/record/template-specialization-inheritance.xml b/test-files/golden-tests/symbols/record/template-specialization-inheritance.xml index b30ebd31a6..6d182e9c90 100644 --- a/test-files/golden-tests/symbols/record/template-specialization-inheritance.xml +++ b/test-files/golden-tests/symbols/record/template-specialization-inheritance.xml @@ -276,6 +276,10 @@ + c7NNZfjOZ8Ztuw0u26xL/h7UKvA= + flxREiXFL5ObY0xUAxojj+jvR54= + nJGs54s6oYf7fHzIpo0tyaCSH9M= + 6Syw3aWFS3pfPUbWU7C8uCE7Jjc= S1 @@ -332,6 +336,7 @@ + 1 S1 @@ -389,6 +394,7 @@ + 1 S0 @@ -421,6 +427,7 @@ + 1 S1 @@ -476,5 +483,6 @@ + 1 diff --git a/test-files/golden-tests/symbols/typedef/decay-to-primary.xml b/test-files/golden-tests/symbols/typedef/decay-to-primary.xml index ecf53d917c..e0f01cdf73 100644 --- a/test-files/golden-tests/symbols/typedef/decay-to-primary.xml +++ b/test-files/golden-tests/symbols/typedef/decay-to-primary.xml @@ -103,6 +103,8 @@ + BWgkCsMw6w/Tkzj0tkQJ8/AWTUo= + nM49pHyBLj9V6pphxxYAxi4tXXc= M0 @@ -193,6 +195,7 @@ + 1 M0 @@ -283,6 +286,7 @@ + 1 M0 diff --git a/test-files/golden-tests/symbols/typedef/implicit-instantiation-member-ref.xml b/test-files/golden-tests/symbols/typedef/implicit-instantiation-member-ref.xml index 748be35ed8..c8f12ae996 100644 --- a/test-files/golden-tests/symbols/typedef/implicit-instantiation-member-ref.xml +++ b/test-files/golden-tests/symbols/typedef/implicit-instantiation-member-ref.xml @@ -111,6 +111,7 @@ + BWgkCsMw6w/Tkzj0tkQJ8/AWTUo= S2 @@ -144,6 +145,7 @@ + LQDMND21bNwDyy/hE3qQoQzFLXY= M2 @@ -234,6 +236,7 @@ + 1 S2 @@ -303,6 +306,7 @@ + 1 M2 diff --git a/test-files/golden-tests/symbols/using/using-alias-template-dependent.xml b/test-files/golden-tests/symbols/using/using-alias-template-dependent.xml index f66d9f2772..f0cab02f92 100644 --- a/test-files/golden-tests/symbols/using/using-alias-template-dependent.xml +++ b/test-files/golden-tests/symbols/using/using-alias-template-dependent.xml @@ -130,6 +130,7 @@ + 6f4GHawhlUckr08SJkt7su9cIDY= type @@ -197,6 +198,7 @@ + 1 is_match diff --git a/test-files/golden-tests/templates/c_mct_expl_inline.xml b/test-files/golden-tests/templates/c_mct_expl_inline.xml index 2a92b6692d..68f3fb8e8f 100644 --- a/test-files/golden-tests/templates/c_mct_expl_inline.xml +++ b/test-files/golden-tests/templates/c_mct_expl_inline.xml @@ -68,6 +68,7 @@ + FxMFFVpoV2/LOOndnkQ2gu3w69U= f @@ -128,6 +129,7 @@ + 1 g diff --git a/test-files/golden-tests/templates/c_mct_expl_outside.xml b/test-files/golden-tests/templates/c_mct_expl_outside.xml index 69e21fb2f9..282bd8ef18 100644 --- a/test-files/golden-tests/templates/c_mct_expl_outside.xml +++ b/test-files/golden-tests/templates/c_mct_expl_outside.xml @@ -68,6 +68,7 @@ + FxMFFVpoV2/LOOndnkQ2gu3w69U= f @@ -128,6 +129,7 @@ + 1 g diff --git a/test-files/golden-tests/templates/c_mft_expl_inline.xml b/test-files/golden-tests/templates/c_mft_expl_inline.xml index 76b185d1e1..60f988e209 100644 --- a/test-files/golden-tests/templates/c_mft_expl_inline.xml +++ b/test-files/golden-tests/templates/c_mft_expl_inline.xml @@ -89,6 +89,7 @@ normal 1 + veV2posfyuimiNezTTVnomiz6tY= f @@ -124,5 +125,6 @@ normal 1 + 1 diff --git a/test-files/golden-tests/templates/c_mft_expl_outside.xml b/test-files/golden-tests/templates/c_mft_expl_outside.xml index 4181a47e63..c0496706ac 100644 --- a/test-files/golden-tests/templates/c_mft_expl_outside.xml +++ b/test-files/golden-tests/templates/c_mft_expl_outside.xml @@ -89,6 +89,7 @@ normal 1 + veV2posfyuimiNezTTVnomiz6tY= f @@ -124,5 +125,6 @@ normal 1 + 1 diff --git a/test-files/golden-tests/templates/ct_expl.xml b/test-files/golden-tests/templates/ct_expl.xml index e7b8a06820..7a8174c22f 100644 --- a/test-files/golden-tests/templates/ct_expl.xml +++ b/test-files/golden-tests/templates/ct_expl.xml @@ -43,6 +43,7 @@ + AKwlChAOi+0ttIAPsD7uitS+gk0= f @@ -103,6 +104,7 @@ + 1 g diff --git a/test-files/golden-tests/templates/ct_mc_expl_outside.xml b/test-files/golden-tests/templates/ct_mc_expl_outside.xml index f4a71e9b82..674c8824dd 100644 --- a/test-files/golden-tests/templates/ct_mc_expl_outside.xml +++ b/test-files/golden-tests/templates/ct_mc_expl_outside.xml @@ -43,6 +43,7 @@ + AKwlChAOi+0ttIAPsD7uitS+gk0= B @@ -128,6 +129,7 @@ + 1 B diff --git a/test-files/golden-tests/templates/ct_mct_expl_inline.xml b/test-files/golden-tests/templates/ct_mct_expl_inline.xml index 6580f28709..b1ba26341c 100644 --- a/test-files/golden-tests/templates/ct_mct_expl_inline.xml +++ b/test-files/golden-tests/templates/ct_mct_expl_inline.xml @@ -75,6 +75,7 @@ + bHsbts/3qH4qdnqFkFXkR6e8OCw= f @@ -135,6 +136,7 @@ + 1 g diff --git a/test-files/golden-tests/templates/ct_mct_expl_outside.xml b/test-files/golden-tests/templates/ct_mct_expl_outside.xml index 86c9fbb084..afef786c29 100644 --- a/test-files/golden-tests/templates/ct_mct_expl_outside.xml +++ b/test-files/golden-tests/templates/ct_mct_expl_outside.xml @@ -43,6 +43,7 @@ + AKwlChAOi+0ttIAPsD7uitS+gk0= B @@ -75,6 +76,7 @@ + IMS2etMN5nj/r7pRC8mVNme6K+o= f @@ -136,6 +138,7 @@ + 1 B @@ -204,6 +207,7 @@ + 1 g diff --git a/test-files/golden-tests/templates/ct_mf_expl_outside.xml b/test-files/golden-tests/templates/ct_mf_expl_outside.xml index b6803bf651..472de47b3a 100644 --- a/test-files/golden-tests/templates/ct_mf_expl_outside.xml +++ b/test-files/golden-tests/templates/ct_mf_expl_outside.xml @@ -43,6 +43,7 @@ + AKwlChAOi+0ttIAPsD7uitS+gk0= f @@ -103,6 +104,7 @@ + 1 f diff --git a/test-files/golden-tests/templates/ct_mft_expl_inline.xml b/test-files/golden-tests/templates/ct_mft_expl_inline.xml index cfbc7a499b..0927eb233d 100644 --- a/test-files/golden-tests/templates/ct_mft_expl_inline.xml +++ b/test-files/golden-tests/templates/ct_mft_expl_inline.xml @@ -96,6 +96,7 @@ normal 1 + TneA5Ayz4v/9oOUbbnRL1ybm8VM= f @@ -131,5 +132,6 @@ normal 1 + 1 diff --git a/test-files/golden-tests/templates/ct_mft_expl_outside.xml b/test-files/golden-tests/templates/ct_mft_expl_outside.xml index 4bf78c294d..c38c982b30 100644 --- a/test-files/golden-tests/templates/ct_mft_expl_outside.xml +++ b/test-files/golden-tests/templates/ct_mft_expl_outside.xml @@ -43,6 +43,7 @@ + AKwlChAOi+0ttIAPsD7uitS+gk0= f @@ -73,6 +74,7 @@ normal 1 + fjcm9F09lrCrLSgw6Swqw9KOBlM= A @@ -110,6 +112,7 @@ + 1 f @@ -205,5 +208,6 @@ normal 1 + 1 diff --git a/test-files/golden-tests/templates/ft_expl.xml b/test-files/golden-tests/templates/ft_expl.xml index 925f1b0e72..8bff955b3e 100644 --- a/test-files/golden-tests/templates/ft_expl.xml +++ b/test-files/golden-tests/templates/ft_expl.xml @@ -63,6 +63,7 @@ normal + ytuvwgqk+lakIfCF209MYkKEp4k= f @@ -97,5 +98,6 @@ PmhXjCXUJYVnj/a7NhfjjSesyp0= normal + 1