[Clang][OpenMP][NFC] Add test for `class-type` data members as loop counters (#228831)
Fixes #140243
An OpenMP loop whose init assigns to a data member of class type, like
`for (a = x; ...)` with `I<int> a`, crashed in
`OpenMPIterationSpaceChecker::checkAndSetInit`. Such an assignment is an
`operator=` call, so it goes through the `CXXOperatorCallExpr` branch,
and two of the `setLCDeclAndLB` calls there took the bound from `BO`,
the `BinaryOperator` cast that had already failed and is null at that
point. The invalid code in the report is not needed: a valid loop over
an iterator-typed data member crashed the same way.
#203252 replaced those `BO->getRHS()` uses with `CE->getArg(1)` as part
of another fix, so the crash is gone on trunk and no source change is
needed. This PR only adds a regression test so the issue can be closed.
kern: Fix write-open "." or ".." to return EISDIR instead of EEXIST
Before the fix, opening "." or ".." for write would return EEXIST, which
was incorrect per the POSIX spec:
https://pubs.opengroup.org/onlinepubs/9699919799/functions/fopen.html
where one would expect one of EISDIR, EINVAL, EACCES.
For example:
```
% sh -c 'echo xxx > /tmp/.'
sh: cannot create /tmp/.: File exists
```
Fix the code to return EISDIR. Note that opening a directory other than
"." or ".." for write already returns EISDIR, e.g.,
[6 lines not shown]
[clang][X86] bring `regparm` in line with GCC (#227130)
Removes some divergences between GCC and Clang using `regparm`. In
particular
- All floats count as floats (previously `f16`, `f16b`, `long double`
and `f128` did not)
- Complex numbers are always passed via the stack
- Unions are always passed like integers
- Some changes to how wrapping structs (with a single non-ZST field) are
handled
I've tested this empirically (with abi-cafe)
---------
Co-authored-by: Reid Kleckner <rkleckner at nvidia.com>
[flang][OpenMP] Remove unnecessary check for extension clauses
Remove the check for extension clauses. These now do have descriptors,
so the check guarding the descriptor retrieval is no longer necessary.
databases/postgresql18-server: Warn about inadequate semaphores
When run on NetBSD (without kernel options or sysctl), and using
/etc/rc.d/pgsql start, this package fails to start, because Postgresql
18 needs many more semaphores than previous versions. While there is
an error message in $PREFIX/pgsql/errlog, it seems helpful to give an
earlier, more precise clue.
This commit adds code to rc.d/pgsql, that, only on NetBSD, checks two
semaphore size sysctl variables, and if below the values believed
appropriate for pgsql, prints a warning, showing the current value and
the implied ok value.
This commit does not write sysctl values, on the theory that it's the
base system's call to set resource limits, and packages should not
override them. (A proposal to increase semaphore limits from the
values used in 1993 drew an objection.)
It's likely that pgsql should use POSIX semaphores instead on NetBSD,
[4 lines not shown]
libpfctl: remove the state getters that do not take a handle
Nothing in the tree calls any of the three. Remove them rather than
fix them: pfctl_get_states_h() does the same with the handle that the
caller has. pfctl_free_states(), struct pfctl_states and the list
entry in struct pfctl_state were there for pfctl_get_states() alone,
and go with it.
Reviewed by: kp
Approved by: kp (mentor)
Fixes: 2a478dfc7f9c ("libpfctl: retrieve family id only once")
Sponsored by: Rubicon Communications, LLC ("Netgate")
Differential Revision: https://reviews.freebsd.org/D60248
igc: make the hardware RSS hash agree with the stack's configuration
rss_gethashconfig() is available without options RSS since d9c55b2e8cd6.
Use it to program MRQC, as ixl(4), ice(4) and iavf(4) do, instead of a
fixed field set that included UDP 4-tuple, which the configuration
excludes unless net.inet.rss.udp_4tuple is set. UDP is now hashed on
addresses only by default.
Also report the UDP hash types on receive; they were passed up as
M_HASHTYPE_NONE.
Reviewed by: kbowling
Fixes: 517904de5cca ("igc(4): Introduce new driver for the Intel I225 Ethernet controller.")
Sponsored by: Rubicon Communications, LLC ("Netgate")
Differential Revision: https://reviews.freebsd.org/D60284
mail/thunderbird*, www/firefox*: fix build on powerpc64*
1. On powerpc64 WASI seems to be broken.
2. On powerpc64le without recent LLVM patch, RUST_BACKTRACE is broken.
graphics/virtio-gpu-qemu-kmod: allow powerpc64 and powerpc64le
Request an X8R8G8B8 resource on big-endian guests: vt(4) and X write
native 0x00RRGGBB pixels, which the host would otherwise display with
red and blue swapped.
sysutils/rust-findutils: update to 0.10.0
Drop the LLVM dependency: onig is used without its bindgen feature, so
libclang was never needed. Set RUSTONIG_SYSTEM_LIBONIG so onig_sys links
the oniguruma from ports instead of compiling its bundled copy. Adds the
locate and updatedb utilities.
Changelog: https://github.com/uutils/findutils/releases/tag/0.10.0
games/eduke32: update to 20260807
Add SW and FURY options (on by default) that build VoidSW with the
Wangulator editor and the Ion Fury engine from the same source tree.
Drop the libogg, libvorbis, png and sdl2_mixer dependencies, which are
not linked (Vorbis decoding is bundled), and the ASM option: upstream
only uses the assembly on i386, so depend on nasm there unconditionally.
gtmr: simplify the checking of the parent device properties.
The code still looks for the "physical" property on the device and the
parent device, but it's more obvious now.
Fix a whitespace issue in the process.