[clang] fix crash with c-style casts involving dependent member-pointer types
A dependent member-pointer type doesn't necessarily have a class declaration.
This simplifies the check performed in a helper for diagnosing a cast which removes qualifiers,
so it doesn't rely on this assumption.
Fixes #194524
[HIP][MacOS] Mach-O support and Darwin toolchain fixes (#183991)
This PR adds support for HIP on macOS: Mach-O section naming, Darwin
host toolchain initialization guards, and HIPSPV behavior when Darwin is
the host.
This has been verified using chipStar on MacOS via the PoCL OpenCL
implementation.
## Uninitialized target workaround
Darwin’s toolchain is only initialized when its own TranslateArgs runs.
For HIP/CUDA device jobs, Darwin is used as the HostTC and never gets
its args translated, so its target stays uninitialized. The new checks
avoid asserting on that uninitialized state. A better long-term fix is
to initialize Darwin earlier (see the FIXME in Driver.cpp
BuildJobsForAction).
- [ ] Initialize Darwin toolchain during construction instead of lazily
in TranslateArgs. See Driver.cpp BuildJobsForAction FIXME.
[2 lines not shown]
[BOLT][AArch64] Refuse to run IndirectCallPromotion pass (#194363)
`--icp=<value>`/`--indirect-call-promotion=<value>` results in an
`UNIMPLEMENTED` crash when invoked as it is unimplemented in AArch64.
- Guard IndirectCallPromotion for non-X86
- Update unsupported-passes.test with expected error
[clang] [fixit] Properly apply warning options during fixit-recompile (#190280)
Fixes https://github.com/llvm/llvm-project/issues/18707
During fixit recompile, the frontend was not reapplying command-line
diagnostic options, so the second pass could lose -Wno-* suppressions
and other warning configuration.
Added regression test to make sure that diagnostic options are properly
applied in the fixit-recompile path.
[LLVM] Fix use-after-free in AlwaysInliner flatten worklist (#194485)
Functions with both `alwaysinline` and `flatten` attributes were
collected into the `NeedFlattening` worklist, then erased during
always-inline processing, leaving dangling pointers. Fix by collecting
flatten functions after the always-inline loop, and eliminate the
separate worklist by iterating the module directly.
[Support] Mark string-returning sys::path::native nodiscard (#194675)
To make it clear that it doesn't modify the path in place like the other
overloads. Follow-up to #193228
sys.net.if_wg.wg_key_peerdev_makeshared: Add require metadata
Add require.user root and require.kmods if_wg to
wg_key_peerdev_makeshared_head(), consistent with the other wg tests.
Without if_wg.ko causes ifconfig wg create to fail with EINVAL. The
test also needs root to create jails.
Sponsored by: The FreeBSD Foundation
[flang][NFC] Converted five tests from old lowering to new lowering (part 52) (#194525)
Converted Lower/user-defined-operators.f90,
Lower/variable-inquiries.f90, Lower/where-allocatable-assignments.f90,
Lower/where.f90, and Transforms/constant-argument-globalisation.fir from
legacy lowering (-hlfir=false / -flang-deprecated-no-hlfir) to new
lowering (-emit-hlfir or no flag for FIR-input tests).
NAS-140831 / 26.0.0-BETA.2 / Fix iSCSI service startup when LIO and SCST modes are mixed (by bmeagherix) (#18836)
Issues
- When SCST mode is selected, `etc_files/lio.py` was unconditionally
calling `write_lio_config()` at the POOL_IMPORT checkpoint, causing LIO
kernel modules to be loaded on every boot regardless of the configured
mode.
- In non-HA deployments, `scst.service` is started by systemd
independently of the middleware, so switching to LIO mode left SCST
attempting to start on the next boot.
Fixes
- Guard the LIO render function: `write_lio_config` is skipped when LIO
is not enabled, and any existing LIO configfs state is actively torn
down if the mode has been switched away from LIO.
- Extend the existing HA logic in `systemd.py` to also force
`scst.service` disabled when LIO is enabled, and regenerates the rc
group on mode change so the enable/disable takes effect immediately
[7 lines not shown]
NAS-140831 / 27.0.0-BETA.1 / Fix iSCSI service startup when LIO and SCST modes are mixed (#18835)
Issues
- When SCST mode is selected, `etc_files/lio.py` was unconditionally
calling `write_lio_config()` at the POOL_IMPORT checkpoint, causing LIO
kernel modules to be loaded on every boot regardless of the configured
mode.
- In non-HA deployments, `scst.service` is started by systemd
independently of the middleware, so switching to LIO mode left SCST
attempting to start on the next boot.
Fixes
- Guard the LIO render function: `write_lio_config` is skipped when LIO
is not enabled, and any existing LIO configfs state is actively torn
down if the mode has been switched away from LIO.
- Extend the existing HA logic in `systemd.py` to also force
`scst.service` disabled when LIO is enabled, and regenerates the rc
group on mode change so the enable/disable takes effect immediately
without a reboot.
[LLVM] Disable IO sandbox in symbolizeAddresses (#194597)
The function `symbolizeAddresses` is used by debugify to symbolize
addresses captured in the current invocation of LLVM, which it does by
executing llvm-symbolizer with temporary input and output files.
Creating the temporary files has an explicit sandbox exclusion, as
temporary files are necessarily not part of the compiler's formal
output, but attempting to read back the output file via MemoryBuffer
triggers a sandbox violation. Since we are always only operating on
temporary files within symbolizeAddresses, this patch disables the IO
sandbox in that function.
games/openttd: update: 15.2 -> 15.3
<ChangeLog>
- Fix: Conditional orders could require a maximum reliability over
100% (#15409)
- Fix: Improve appearance of toolbars and main menu images/text with
some non-default base sets (#15402)
- Fix: [Script] IsBuildableRectangle for a 0x0 tile should return
false (#15357)
- Fix: Desync caused by train crashes (#15338)
- Fix: Incorrect scroll bar capacity for train details window total
cargo tab (#15329)
- Fix #15310: Crash caused by a helicopter running out of fuel near
map edge (#15311)
</ChangeLog>
PR: 294594
Approved by: danfe (maintainer)
Sponsored by: tipi.work
[TableGen] Emit constexpr versions of some directive/clause functions (#194633)
A variant of https://github.com/llvm/llvm-project/pull/176253 with a
change to reduce compile-time impact.
Since "llvm_unreachable" is actually allowed in constexpr functions,
simply emit the bodies of the selected functions in the header file.
In the previous PR the `isAllowedClauseForDirective` function was made
constexpr, but since it was very long it had a significant impact on
compilation time. In this PR that function is no longer constexpr.
shells/xonsh: Fix short description
- Remove pkg name from COMMENT
Reported by: makc
Fixes: 171de8a6 ("shells/xonsh: Update short and long description")
Vendor import of smart at 1.0.2
smart/diskhealth is a command line application to monitor disk health
from a storage device via SMART.
Reviewed by: fuz, jrm
Relnotes: yes
Differential Revision: https://reviews.freebsd.org/D56638
bsdinstall: Improve auto-partition message
Manually tuning ZFS for systems with <8GB ram hasn't been necessary at
least since the switch to OpenZFS. We have users reporting using 1GB RAM
with no manual tuning/issues. Further, the page this links to is a stale
wiki page, which is causing complaints. Remove this misleading note and
replace it with a similar message for UFS. While here, reword that note
to be a bit clearer.
PR: 287719
MFC after: 3 days
Differential Revision: https://reviews.freebsd.org/D50971