-
Notifications
You must be signed in to change notification settings - Fork 10.5k
Manually merge main into rebranch #81526
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merged
Merged
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Prefer `strncpy_s` over `strncpy` which triggers a warning. This function ensures that the copied string is null-terminated if the string fits or simply returns an empty string (`\0`) if the string does not fit. Prefer to use `_TRUNCATE` to copy as much of the name as fits and ensure that it is null-terminated.
…ut a redundant `T: ~Copyable`. Enhance the logic in `applyInverses` to also take into account same-type constraints spelled in the generic signature, so that same-type-constraining a type parameter to a type that is itself not `Copyable` or `Escapable` suppresses the default application of those constraints on the type parameter. Fixes rdar://147757973.
We would fail to build the runtime with the new build with command line support and a shared runtime. The reason for this was that CommandLineSupport did not properly build against the headers and attempted to import a locally defined symbol. Correct the build by indicating that this library is compacted into the runtime.
CommandLine support builds on all platforms at this time. There is no need to have a default disabling it anymore. Setting the default option to enable it on all platforms without condition.
… (unwrap if needed)
Enable command line support, library evolution, vector types, file system support, runtime function counters, and optimization remark emission. This brings the windows runtime configuration and Darwin to parity.
Almost all clients would crash for an invalid location, let's always assert.
Handle PatternBindingDecls with missing var locations, which can happen for loop iterator vars, and FuncDecls with missing name and func locations, which can happen for `defer`. Also while here make sure we set the source location of a parser-produced ErrorExpr.
This wasn't really sound since it could result in source ranges that have different buffers for the start and end loc. Instead, adjust the parser logic to look at the brace range.
These don't appear to be necessary, let's mirror the logic in `getStartLoc` and remove them.
Use the higher level APIs on SourceManager that handle locations in parent vs child buffers. This then allows us to fix `walkToDeclPre` such that we don't set the found DeclContext unless the location is actually within that decl (here the location may well be in a separate buffer as we may have a replaced function body).
Previously we could end up in cases where we pick the wrong DeclContext in `TypeCheckASTNodeAtLocRequest` since we previously weren't checking source ranges, which could result in skipping the type-checking of an outer closure. Now that we correctly pick the DeclContext, we should no longer hit that case, so we should be able to fall into `getTypeForCompletion` and assert that the solution has a type. Also while here let's upgrade that assert to a `CONDITIONAL_ASSERT`.
…-stop-copyable Sema: Allow `T == NonCopyableOrEscapable` same-type constraints without a redundant `T: ~Copyable`.
…fix-80992 Fixed no copying IsIsolated flag when cloning subscript params
…ourceranges [IDE] Avoid uses of `isBeforeInBuffer` in `TypeCheckASTNodeAtLocRequest`
Remove the CASFS based clang module implemenation as it is not longer used.
After removing the CASFS implementation for clang modules, there is no need to capture clang extra file that sets up the VFS for the clang modules since all content imported by ClangImporter is dependency scanned and available via include-tree. This saves more ClangImporter instance when caching is enabled. Update the test to check that clang content found via `-Xcc` VFS options can currently work without capture the headermaps and vfs overlays.
Runtimes: correct CommandLineSupport build on Windows
Concurrency: silence warning on Windows
Runtimes: tweak default configuration for Windows
…otes [ClangImporter] Fix enum conversion type when importing global values (unwrap if needed)
Currently we delete dead drop_deinit instructions in InstructionDeleter. For address results, we may end up with ownership errors after being promoted to value forms. For value results, fixLifetimes mode of InstructionDeleter will insert an illegal destroy_value rdar://151104993
…dline-by-default Runtimes: Enable CommandLine support wholesale
Fix InstructionDeleter for drop_deinit instruction
…erts [presets] Escalate C++ "unused" warnings in macOS smoke test
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
No description provided.