DAG: Gracefully diagnose missing lrint/llrint/lround/llround libcall
Avoid hitting the fatal error in makeLibCall by emitting a diagnostic
if the library call is unsupported.
Co-authored-by: Claude (Claude-Opus-4.8) <noreply at anthropic.com>
[libc] Enable most tests in hermetic mode (#213852)
This is mostly a straightforward search&replace, as I've addressed the
blockers in previous patches. The nontrivial parts are:
- adding a SUITE to a single (FP) test which doesn't have it (turns out
hermetic tests require a SUITE argument)
- using APPEND_LIBC_TESTS in a couple of tests creating files (to avoid
races between unit and hermetic versions)
- renaming add_libc_unittest to _add_libc_unittest to prevent accidental
creations of non-hermetic tests (one can still use the UNIT_TEST_ONLY
arg to add_libc_test to achieve this effect)
[clang] Simplify the overload resolution logic for operator new and new[]
This PR replaces the current spec-equivalent argument list mutation with
direct iteration of the correctly ordered set of argument lists for a
given allocation.
This adds a bit of architectural work around the argument list construction
but the overall effect is substantially simplified search of the overload
candidates.
* We now simply enumerate correctly ordered candidates for the implicit
arguments. This means no more re-entrant modification of the argument
list to handle addition and removal of type-identity or alignment
parameters.
* We no longer mutate the primary LookupResult when attempting the MSVC
array fallback. This also lays the groundwork for correct diagnostics
of such cases. For now we have a minor improvement of correctly
reporting the operator we were trying to resolve originally, and tell
the user that we have attempted the MSVC fallback if applicable.
[16 lines not shown]
www/{nginx-devel,freenginx}: 3rd-party modules management
The nginx_upstream_check_module extra-patches no longer matched the
current sources, so builds with HTTP_UPSTREAM_CHECK enabled failed.
nginx-devel: refresh the ngx_http_upstream_round_robin.c extra-patch for
nginx 1.31; reuse the patch already carried by www/nginx.
freenginx: regenerate the round_robin extra-patch against freenginx's
sources, and add extra-patch-ngx_http_upstream_check_module.c which
replaces the module's use of the ngx_http_status_t 'count' member
(removed in freenginx) with a local variable.
PR: 295745
Sponsored by: Netzkommune GmbH
[libc] Fix Atan2f128 and add tests for all versions (#215023)
It fixes the THREE_PI_OVER_4 value in atan2f128 and adds a small smoke
test against the failure.
The result or comparison value is directly taken from the failure while
comparing with core math :
```CPP
FAIL x=inf y=-inf ref=0x1.2d97c7f3321d234f272993d1414ap+1 z=0x1.2d97c7f3321d234f272993d1414ap-1
```
Additionally it adds some more smoke tests for all atan2 versions.