This adds the ability to conditionally run the test suite for LLVM, LLD,
LLDB, Clang, and Swift. This will allow us to increase the test
coverage in CI to avoid regressions.
Swift has some module maps it overlays on Linux and Windows that groups all of the C standard library headers into a single module. This doesn’t allow clang and C++ headers to layer properly with the OS/SDK modules. clang will set -fbuiltin-headers-in-system-modules as necessary for Apple SDKs, but Swift will need to pass that flag itself when required by its module maps.
While we don't want to return non-editable base names for Edit-All-In-Scope, we do want to return them if the related identifiers response is used as the input for find-syntactic-rename-ranges.
Integrate support for sccache into the build system. This allows us to
get a reasonable performance increase for clean builds for the C/C++
side of the build. This is currently limited to the MSVC compiler as
the extended compiler flags cause issues for sccache.
Update the variables for the pinned-toolchain usage to correctly specify the compilers. Additionally use the new helpers to work with the new toolchain layout as well.
Adjust the flags for the updated CURL version. It seems that we accidentally disabled HTTPS support in the CURL builds with the last update. This is required for `URLSession` and `URLRequest` to support HTTPS.
The `release/5.10` specification of update-checkout on the `main` branch was out-of-date and didn’t clone e.g. `zlib`. This caused CI testing for the `release/5.10` branch of swift-syntax to fail.
Function body macros allow one to introduce a function body for a
particular function, either providing a body for a function that
doesn't have one, or wholesale replacing the body of a function that
was written with a new one.
./utils/cmpcodesize/cmpcodesize/main.py:20:71: E231 missing whitespace after ','
./utils/round-trip-syntax-test:20:20: E721 do not compare types, for exact checks use `is` / `is not`, for instance checks use `isinstance()`
./utils/round-trip-syntax-test:21:16: E721 do not compare types, for exact checks use `is` / `is not`, for instance checks use `isinstance()`
I can't find any uses of round-trip-syntax-test, so I don't know if
this fix is correct.
Add `--reset-to-remote` to the `update-checkout` invocation to ensure
that the state of the tree is reset. This should help avoid some of the
failures that we occassionally see with the builders being left in a
modified state.
If the `SWIFTCI_USE_LOCAL_DEPS` environment variable is set, we're building in the Swift.org CI system alongside other projects in the Swift toolchain and we can depend on local versions of our dependencies instead of fetching them remotely.
This removes >70 tests from the list of tests that are being rerun. The REPL
doesn't really benefit from DWARFImporter, since there is no deb ug info in the
victim process, so it makes no sense to test this configuration.