[premerge] Route macOS build through a monolithic script to enable Job Summary (#211565)
The macOS premerge job built inline instead of via a `monolithic-*.sh`
script, so it never emitted a GitHub Job Summary or JUnit XML like
Linux/Windows do on failure
Improved MSVC diagnostics, fixed some bugs identifier by (sigh) claude.
LLM usage:
Depressingly claude actually did something right:
- Identified align_val_t being cached alongside size_t was likely
unsound, which was easy enough to create a test for.
- It also noted that tryBuildStdTypeIdentity could be reentrant,
and was able to construct a test case when i could not. That is
now test #5 in type-aware-new-invalid-type-identity.cpp.
An invalid type_identity defined as:
```cpp
template <class T> struct type_identity {
using type = decltype(new T);
};
```
triggers re-entrant evaluation of getTypeIdentityArgument
invalidating the insertion slot.
Improved MSVC diagnostics, fixed some bugs identifier by (sigh) claude.
LLM usage:
Depressingly claude actually did something right:
- Identified align_val_t being cached alongside size_t was likely
unsound, which was easy enough to create a test for.
- It also noted that tryBuildStdTypeIdentity could be reentrant,
and was able to construct a test case when i could not. That is
now test #5 in type-aware-new-invalid-type-identity.cpp.
An invalid type_identity defined as:
```cpp
template <class T> struct type_identity {
using type = decltype(new T);
};
```
triggers re-entrant evaluation of getTypeIdentityArgument
invalidating the insertion slot.
[lldb] Include `Debugger.h` in `ScriptedCommandPythonInterface.cpp` (NFC) (#212662)
Commit c35bdc99a36b passes a `lldb::DebuggerSP` to the
`ScriptedPythonInterface` base template, whose `Transform` overload is
constrained on `std::is_base_of_v` and so needs `Debugger` to be
complete. This patch includes `lldb/Core/Debugger.h` since the
translation unit only saw the forward declaration.
Signed-off-by: Med Ismail Bennani <ismail at bennani.ma>
[lldb/script] Migrate ParsedCommand & raw commands onto ScriptedPythonInterface (#210430)
Give both `command script add -c` (raw class) and `-p` (ParsedCommand) a
single, shared
`ScriptedCommandInterface`/`ScriptedCommandPythonInterface`, built on
the existing `ScriptedPythonInterface` machinery: `CreatePluginObject`
delegates to the base template, and every other method goes through
`Dispatch`.
Add a lighter `ScriptedCommand` ABC template (`scripted_command.py`) for
raw mode; the existing `ParsedCommand`/`LLDBOptionValueParser` classes
are kept as-is.
Extend `ScriptedPythonInterface` with a few `Transform` overloads
(`DebuggerSP`, `std::vector<std::string>`, `CommandReturnObject &`) so
those argument types route through `Dispatch` without extra plumbing.
Delete the standalone SWIG bridge functions this plugin was the sole
caller of. `CommandObjectScriptingObjectRaw` and
[6 lines not shown]
[flang][openacc] Allow blank around ':' in generated clause parser with keyword (#212638)
Follow up to https://github.com/llvm/llvm-project/pull/210446 to also
allow the space in the parser generated by TableGen.
[clang] Add __builtin_convert_from_arbitrary_fp
Expose llvm.convert.from.arbitrary.fp as a target-independent builtin. It
interprets an integer as the bits of a narrow floating-point format and
converts it to a supported floating-point type.
Since the destination cannot be inferred from the operands, it is provided as
a type argument and parsed using a dedicated expression, following
__builtin_convertvector.
Sema requires an ordinary string literal naming a verifier-valid arbitrary
floating-point format. The source must be an integer of the corresponding bit
width, with signedness ignored. Fixed-length vectors are supported when source
and destination element counts match.
Destination elements are restricted to IEEE half, bfloat16, IEEE single, and
IEEE double semantics. x87 extended, PPC double-double, IEEE quad, __mfp8, and
sizeless vector destinations are rejected because existing intrinsic lowering
does not safely support them.
[6 lines not shown]
[libc] Add missing type dependencies to sys_types header target (#212601)
Add missing type dependencies to the sys_types header target in
libc/include/CMakeLists.txt for types defined in sys/types.yaml,
including __off_t, __off64_t, __uint64_t, off64_t, and BSD/System V
types added in commit 39df67d0edef.
Without these DEPENDS entries, CMake and Ninja do not copy the
corresponding type headers into the build and install directories,
causing missing header includes (e.g. __off64_t.h) when consuming
generated <sys/types.h>.
Assisted-by: Automated tooling, human reviewed.