Skip to content

Commit f3404f3

Browse files
authored
Merge pull request #5512 from erg/fix-swift-api-digester2
[cmake]: Second try at making swift-api-digester work correctly.
2 parents 14f3f1c + fd36b92 commit f3404f3

File tree

4 files changed

+9
-13
lines changed

4 files changed

+9
-13
lines changed

test/CMakeLists.txt

+2-1
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,8 @@ function(get_test_dependencies SDK result_var_name)
4141

4242
set(deps_binaries
4343
swift swift-ide-test sil-opt swift-llvm-opt swift-demangle sil-extract
44-
lldb-moduleimport-test swift-reflection-dump swift-remoteast-test)
44+
lldb-moduleimport-test swift-reflection-dump swift-remoteast-test
45+
swift-api-digester)
4546
if(NOT SWIFT_BUILT_STANDALONE)
4647
list(APPEND deps_binaries FileCheck arcmt-test c-arcmt-test c-index-test
4748
clang llc llvm-cov llvm-dwarfdump llvm-link llvm-profdata not)

tools/CMakeLists.txt

+1-6
Original file line numberDiff line numberDiff line change
@@ -6,17 +6,12 @@ add_swift_tool_subdirectory(swift-demangle)
66
add_swift_tool_subdirectory(lldb-moduleimport-test)
77
add_swift_tool_subdirectory(sil-extract)
88
add_swift_tool_subdirectory(swift-llvm-opt)
9-
10-
if(SWIFT_HOST_VARIANT STREQUAL "macosx")
11-
# Only build Darwin-specific tools when deploying to OS X.
12-
add_swift_tool_subdirectory(swift-api-digester)
13-
endif()
9+
add_swift_tool_subdirectory(swift-api-digester)
1410

1511
if(SWIFT_BUILD_SOURCEKIT)
1612
add_swift_tool_subdirectory(SourceKit)
1713
endif()
1814

19-
2015
is_sdk_requested("${SWIFT_HOST_VARIANT_SDK}" SWIFT_HOST_SDK_REQUESTED)
2116
if(SWIFT_BUILD_STDLIB AND SWIFT_HOST_SDK_REQUESTED)
2217
add_swift_tool_subdirectory(swift-reflection-dump)
+3-3
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
1-
add_swift_executable(swift-api-digester
1+
add_swift_host_tool(swift-api-digester
22
swift-api-digester.cpp
3-
LINK_LIBRARIES
4-
swiftFrontend swiftIDE
3+
LINK_LIBRARIES swiftFrontend swiftIDE
4+
SWIFT_COMPONENT tools
55
)

tools/swift-api-digester/swift-api-digester.cpp

+3-3
Original file line numberDiff line numberDiff line change
@@ -293,7 +293,7 @@ struct SDKNodeInitInfo {
293293
};
294294

295295
class SDKNode {
296-
typedef std::vector<NodeUniquePtr>::const_iterator ChildIt;
296+
typedef std::vector<NodeUniquePtr>::iterator ChildIt;
297297
StringRef Name;
298298
StringRef PrintedName;
299299
unsigned TheKind : 4;
@@ -320,7 +320,7 @@ class SDKNode {
320320
bool isNameValid() const { return Name != "_"; }
321321
StringRef getPrintedName() const { return PrintedName; }
322322
void removeChild(ChildIt CI) { Children.erase(CI); }
323-
ChildIt getChildBegin() const { return Children.begin(); }
323+
ChildIt getChildBegin() { return Children.begin(); }
324324
void annotate(NodeAnnotation Anno) { Annotations.insert(Anno); }
325325
NodePtr getParent() const { return Parent; };
326326
unsigned getChildrenCount() const { return Children.size(); }
@@ -491,7 +491,7 @@ void SDKNode::postorderVisit(NodePtr Root, SDKNodeVisitor &Visitor) {
491491
class SDKNodeVectorViewer {
492492
ArrayRef<SDKNode*> Collection;
493493
llvm::function_ref<bool(NodePtr)> Selector;
494-
typedef ArrayRef<SDKNode*>::const_iterator VectorIt;
494+
typedef ArrayRef<SDKNode*>::iterator VectorIt;
495495
VectorIt getNext(VectorIt Start);
496496
class ViewerIterator;
497497

0 commit comments

Comments
 (0)