https://github.com/QuietMisdreavus updated https://github.com/llvm/llvm-project/pull/119925
>From 1ab5e1c6d1dcf2bfbaa517bdb9d90f6007debce4 Mon Sep 17 00:00:00 2001 From: Vera Mitchell <v...@apple.com> Date: Fri, 13 Dec 2024 13:47:18 -0700 Subject: [PATCH] reorder the module names in extension symbol graph file names rdar://140298287 --- .../ExtractAPI/Serialization/SymbolGraphSerializer.cpp | 5 ++--- clang/test/ExtractAPI/objc_external_category.m | 9 ++++++++- 2 files changed, 10 insertions(+), 4 deletions(-) diff --git a/clang/lib/ExtractAPI/Serialization/SymbolGraphSerializer.cpp b/clang/lib/ExtractAPI/Serialization/SymbolGraphSerializer.cpp index c730c062b6a1d5..e881d56258e5e4 100644 --- a/clang/lib/ExtractAPI/Serialization/SymbolGraphSerializer.cpp +++ b/clang/lib/ExtractAPI/Serialization/SymbolGraphSerializer.cpp @@ -1067,9 +1067,8 @@ void SymbolGraphSerializer::serializeWithExtensionGraphs( for (auto &ExtensionSGF : Serializer.ExtendedModules) { if (auto ExtensionOS = - CreateOutputStream(ExtensionSGF.getKey() + "@" + API.ProductName)) - Serializer.serializeGraphToStream(*ExtensionOS, Options, - ExtensionSGF.getKey(), + CreateOutputStream(API.ProductName + "@" + ExtensionSGF.getKey())) + Serializer.serializeGraphToStream(*ExtensionOS, Options, API.ProductName, std::move(ExtensionSGF.getValue())); } } diff --git a/clang/test/ExtractAPI/objc_external_category.m b/clang/test/ExtractAPI/objc_external_category.m index 8afc92489f28b6..1947237d088e8f 100644 --- a/clang/test/ExtractAPI/objc_external_category.m +++ b/clang/test/ExtractAPI/objc_external_category.m @@ -46,7 +46,7 @@ @interface ExtInterface // Symbol graph from the build without extension SGFs should be identical to main symbol graph with extension SGFs // RUN: diff %t/symbols/Module.symbols.json %t/ModuleNoExt.symbols.json -// RUN: FileCheck %s --input-file %t/symbols/externalmod...@module.symbols.json --check-prefix EXT +// RUN: FileCheck %s --input-file %t/symbols/mod...@externalmodule.symbols.json --check-prefix EXT // EXT-DAG: "!testRelLabel": "memberOf $ c:objc(cs)ExtInterface(py)Property $ c:objc(cs)ExtInterface" // EXT-DAG: "!testRelLabel": "memberOf $ c:objc(cs)ExtInterface(im)InstanceMethod $ c:objc(cs)ExtInterface" // EXT-DAG: "!testRelLabel": "memberOf $ c:objc(cs)ExtInterface(cm)ClassMethod $ c:objc(cs)ExtInterface" @@ -55,3 +55,10 @@ @interface ExtInterface // EXT-DAG: "!testLabel": "c:objc(cs)ExtInterface(cm)ClassMethod" // EXT-NOT: "!testLabel": "c:objc(cs)ExtInterface" // EXT-NOT: "!testLabel": "c:objc(cs)ModInterface" + +// Ensure that the 'module' metadata for the extension symbol graph should still reference the +// declaring module + +// RUN: FileCheck %s --input-file %t/symbols/mod...@externalmodule.symbols.json --check-prefix META +// META: "module": { +// META-NEXT: "name": "Module", _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits