Previously, `absl::Condition` incorrectly used the same (non-`const`) pointer-to-method type when wrapping both `const` and non-`const` methods. Unfortunately, this is undefined behavior according to `[expr.reinterpret.cast]` in the C++ standard: > The effect of calling a function through a pointer to a function type that is > not the same as the type used in the definition of the function is undefined. This fixes the UB. PiperOrigin-RevId: 591981682 Change-Id: Iaca955346699417232383d3a1800ea9b82ea5761
| Name |
Last commit
|
Last Update |
|---|---|---|
| .. | ||
| internal | Loading commit data... | |
| BUILD.bazel | Loading commit data... | |
| CMakeLists.txt | Loading commit data... | |
| barrier.cc | Loading commit data... | |
| barrier.h | Loading commit data... | |
| barrier_test.cc | Loading commit data... | |
| blocking_counter.cc | Loading commit data... | |
| blocking_counter.h | Loading commit data... | |
| blocking_counter_benchmark.cc | Loading commit data... | |
| blocking_counter_test.cc | Loading commit data... | |
| lifetime_test.cc | Loading commit data... | |
| mutex.cc | Loading commit data... | |
| mutex.h | Loading commit data... | |
| mutex_benchmark.cc | Loading commit data... | |
| mutex_method_pointer_test.cc | Loading commit data... | |
| mutex_test.cc | Loading commit data... | |
| notification.cc | Loading commit data... | |
| notification.h | Loading commit data... | |
| notification_test.cc | Loading commit data... |