[CMake] Propagate dependencies to OBJECT libraries in add_llvm_library (re-land) (#184201)
Previously, transitively inherited calls to
`target_include_directories(foo SYSTEM ...)` were being squashed into a
flat list of includes, effectively stripping off `-isystem` and
unintentionally forwarding warnings from such dependencies.
To correctly propagate `SYSTEM` dependencies, use
`target_link_libraries` to forward the parent target's link dependencies
to the OBJECT library (similar to the `_static` flow below). Unlike a
flat `target_include_directories`, this lets CMake resolve transitive
SYSTEM include directories through the proper dependency chain.
Note that `target_link_libraries` on an OBJECT library propagates all
usage requirements, not just includes. This also brings in transitive
`INTERFACE_COMPILE_DEFINITIONS`, `INTERFACE_COMPILE_OPTIONS`, and
`INTERFACE_COMPILE_FEATURES`. This is arguably more correct, as the
OBJECT library compiles the same sources and should see the same flags.
[13 lines not shown]
terraform-provider-template: Convert to go-module.mk and define TERRAFORM_PROVIDER_LEGACY_INSTALL
Convert to lang/go/go-module.mk and define
TERRAFORM_PROVIDER_LEGACY_INSTALL intended to replace
net/terraform-provider-template.
(There are no newer versions and this package is deprecated.)
[CIR] Split cir.binop into separate per-operation binary ops
LLVM lowering uses per-op patterns generated by the CIRLowering.inc TableGen
infrastructure instead of a monolithic TypeSwitch dispatch.
Add a new endpoint to bulk upgrade apps
This commit adds changes to add a new endpoint to bulk upgrade apps to avoid firing alert logic on each app upgrade instead.
[Clang][Sema][Builtins] Check argument count for `__builtin_allow_sanitize_check` (#183927)
Fixes #183501.
The crash was due to calling `getArg(0)` without validating there was at
least one argument. Since `__builtin_allow_sanitize_check` has the
`CustomTypeChecking` attribute, it requires checking the argument count
explicitely.
[CIR] Split cir.binop into separate per-operation binary ops
LLVM lowering uses per-op patterns generated by the CIRLowering.inc TableGen
infrastructure instead of a monolithic TypeSwitch dispatch.
terraform-provider-random2: Import terraform-provider-random2-2.3.0
The "random" provider allows the use of randomness within Terraform
configurations. This is a logical provider, which means that it works entirely
within Terraform's logic, and doesn't interact with any other services.
[clang] Replace `finish()` with destructors for `DiagnosticConsumer` (#183831)
The `DiagnosticConsumer::finish()` API has historically been a source of
friction. Lots of different clients must manually ensure it gets called
for all consumers to work correctly. Idiomatic C++ uses destructors for
this. In Clang, there are some cases where destructors don't run
automatically, such as under `-disable-free` or some signal handling
code in `clang_main()`. This PR squeezes the complexity of ensuring
those destructors do run out of library code and into the tools that
already deal with the complexities of `-disable-free` and signal
handling.
[lldb][ARM] Support thread local variables on ARM Linux (#181315)
Currently, `DynamicLoaderPOSIXDYLD::GetThreadLocalData()` only supports
the TLS memory layout where the thread pointer register points to the
start of the `pthread` structure, and the address of the DTV pointer can
be calculated by adding the offset of the `dtv` field to `tp`. On ARM
(and AArch64), the thread pointer points directly to `dtv`. The patch
improves the detection of the actual memory layout in the method and
adjusts the calculations for the new case, thus adding support for
thread-local variables on ARM Linux.
System: Gateways: Configuration - ensure proper types are emitted in searchGatewayAction() when configd action fails.
should prevent hard failures like:
TypeError: array_key_exists(): Argument #2 ($array) must be of type array, null given in /usr/local/opnsense/mvc/app/controllers/OPNsense/Routing/Api/SettingsController.php:122 Stack trace: #0
[APINotes][NFC] Fix typos and header comment errors (#183811)
## Description
Fix minor typos and incorrect comments in the APINotes subsystem (No
functional code is modified)
## Changes Made
- **`APINotesReader.h`** — Fixed `member buffer` → `memory buffer` in
the `Create()` doc comment (`Create()` takes a `llvm::MemoryBuffer`)
- **`APINotesFormat.h`** — Corrected the file header comment which
incorrectly referred to `APINotesWriter.h` instead of `APINotesFormat.h`
- **`APINotesYAMLCompiler.cpp`** — Fixed `it's` → `its` (possessive, not
a contraction)
- **`SemaAPINotes.cpp`** — Fixed `collection` → `collecting` and added a
missing `to` in `defer to the client to select`
## Motivation
[2 lines not shown]
[AMDGPU][NFC] Add virtual prefix to GCN LiveRegs and Pressure.
The renames are to clarify that these fields capture virtual register
attributes and are in preparation for upcoming physical register
support.
www/py-trio-websocket: import py-trio-websocket-0.12.2 as www/py-trio-websocket
This library implements both server and client aspects of the the WebSocket
protocol, striving for safety, correctness, and ergonomics. It is based on
the wsproto project, which is a Sans-IO state machine that implements the
majority of the WebSocket protocol, including framing, codecs, and events. This
library handles I/O using the Trio framework.
While in practice the ibuf_skip() call can not fail it is better to check
it. If the ibuf header can't be skipped it is better to not forward the
message and return an error.
Fix for CID 492354
OK tb@
Teach window(1) how to deal with ANSI terminal escape sequences.
Specifically: escape sequences begining with [ and which contain ? or numeric values.
This allows window(1) to work better with those terminal programs, especially those which use
readline(3) calls, which insist on emitting these extended escape sequences even if those
definitions are not in the termcap or terminfo spec for the terminal in use.
this new support is incomplete in the sense that we don't do anything with the numeric values,
but we do honor the functions of the actions requested as long as they were actions this
program already supported.
Preliminary testing shows a vast improvement with programs like gdb and the interactive python
shells.
[llvm] Avoid resolving `.incbin` during symbol collection (#172920)
With IO sandboxing enabled, Clang requires all FS accesses happen
through the one "true" VFS instance. That instance is currently not
being propagated into the assembly parser, and doing so would be super
involved. This triggers sandbox violations whenever an `.incbin`
directive is encountered, since the parser needs the VFS to open the
file.
However, it seems that `asm()` directives are only parsed to get the
symbols of an LLVM module, which cannot be affected by `.incbin`
directives. This PR adds an option to the asm parser to avoid resolving
`.incbin` directives when collecting module symbols, avoiding the
sandbox violation.