mirror of
https://github.com/ETLCPP/etl.git
synced 2026-04-30 19:09:10 +08:00
* Fix delegate not being cleared by assigning empty braces Fixes issue #1399. The non-capturing lambda support (PR#1295) added a non-explicit delegate(function_ptr) constructor and operator=(function_ptr). This caused `delegate = {}` to implicitly convert `{}` to a null function pointer and bind it via function_ptr_stub, leaving the delegate appearing valid (stub != nullptr) but invoking through a null pointer (undefined behavior). Fix: - Mark delegate(function_ptr) constructor explicit to prevent implicit conversion from `{}` during initialization. - In operator=(function_ptr), clear the delegate when fp is null instead of binding a null pointer through function_ptr_stub. Added tests verifying that both `delegate d = {}` and `d = {}` produce an invalid (cleared) delegate. * Fix Dockerfile for powerpc cross build Debian snapshot sources were mixed with plain sid sources which mismatched after a while. Now, aligning all sources from snapshot server. |
||
|---|---|---|
| .. | ||
| armhf | ||
| clang7 | ||
| clang8 | ||
| clang9 | ||
| clang10 | ||
| clang11 | ||
| clang12 | ||
| clang13 | ||
| clang14 | ||
| clang15 | ||
| clang16 | ||
| clang17 | ||
| clang18 | ||
| clang19 | ||
| clang20 | ||
| clang21 | ||
| context | ||
| gcc09 | ||
| gcc10 | ||
| gcc11 | ||
| gcc12 | ||
| gcc13 | ||
| gcc14 | ||
| gcc15 | ||
| i386 | ||
| powerpc | ||
| riscv64 | ||
| s390x | ||
| devcontainer.json | ||
| Dockerfile | ||
| run-tests.sh | ||