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

Reply via email to