Files
swift-mirror/test/Interop/SwiftToCxx/stdlib/stdlib-in-cxx-no-diagnostics-generated-header.cpp
2025-12-14 18:18:39 +05:30

32 lines
1.0 KiB
C++

// RUN: %empty-directory(%t)
// RUN: split-file %s %t
// RUN: %target-swift-frontend %t/print-string.swift -module-name Stringer -enable-experimental-cxx-interop -typecheck -verify -emit-clang-header-path %t/Stringer.h
// Ensure: we don't hit any spurious warnings instantiating
// C++ standard library templates because of the generated header.
// RUN: %target-interop-build-clangxx -std=gnu++20 -fsyntax-only -c %t/test-stdlib.cpp -I %t -Wall -Werror -Werror=ignored-attributes -Wno-error=unused-command-line-argument
// #84574 and #82055 have turned up an availability edge case on Android, disable till fixed.
// XFAIL: OS=linux-android, OS=linux-androideabi
//--- print-string.swift
public func printString(_ s: String) {
}
//--- test-stdlib.cpp
#include "Stringer.h"
#include <iostream>
int main() {
// Ensure that template instantiations inside C++
// standard library in this call don't cause any new diagnostics
// because of the generated header.
std::cout << "test invoke std::cout\n" << std::endl;
auto _ = swift::String::init();
return 0;
}