* add ambiguity guards to {{{CBTYPE_FVF_BUILDER_P1_F1}}} and {{{CBTYPE_FVF_BUILDER_P1_F1F2}}}.
17 lines of code changed in 1 file:
* rename and move {{{CBTYPE_FVV_BUILDER_P}}} -> {{{CBTYPE_FFV_BUILDER_P}}}
* add ambiguity guards to {{{CBTYPE_FFV_BUILDER_P}}}.
14 lines of code changed in 1 file:
* add ambiguity guards to {{{CBTYPE_VV_BUILDER_P1}}}.
8 lines of code changed in 1 file:
* misc changes
- remove alias {{{CONST_VARIANT_REQUIRED_TESTED}}}.
- use consistent callback names in testcode.
- test using double as callback parameter (possible by pointer).
- document errors on type mismatch between callback parameter and bound value.
- document builder-macro parameter naming conventions.
94 lines of code changed in 2 files:
* do not overload {{{call_root_as_win}}} for callback with const parameter
* again fixes clang21 build errors
2 lines of code changed in 1 file:
* undo simplication done with [19988]
* clang21 build still broken
24 lines of code changed in 1 file:
* add tests for {{{RootAsWindowCallback}}}
- contain cases which triggered all overloaded variants.
* simplify member function template in {{{RootAsWindowCallback}}}:
- replace overloads by using multiple template parameters
Note: breaks build with clang21 :-(
48 lines of code changed in 5 files:
* rename different flavors of {{{cwcb3}}}
- add code to trace all 16 combinations of callbacks + parameters.
- commented-out invalid combinations (leading to compile errors; no way to explicitely test them).
28 lines of code changed in 1 file:
* fix {{{ParamIsMutable}}} for template-parameters that are function-pointers
- the function (i.e. its code) is generally regarded as "not mutable"
- effectively fixes #880
* include missing header
11 lines of code changed in 3 files:
* adds const flavors for two templates in {{{RootAsWindowCallback}}}
- this attempts to fix two remaining ambiguity errors with clang21.
25 lines of code changed in 1 file:
* fix {{{ParamIsMutable}}} for types passed by value (now no longer considered as mutable).
19 lines of code changed in 2 files:
* add tests for pointer-references and pointer-pointers.
16 lines of code changed in 1 file:
* also remove template-backtrace-limit for clang.
1 lines of code changed in 1 file:
* increase macro backtrace/tracking limits for clang/gcc
11 lines of code changed in 1 file:
* fix {{{CONST_VARIANT_REQUIRED}}}
- an extra (more) const variant of each callback builder is required for each mutable parameter (and for all combinations of such parameters).
- add template {{{ParamIsMutable}}} to detect that condition
* replaces the template {{{RequiresConstVariant}}} (this was completely broken; see test results added with r19977)
22 lines of code changed in 2 files:
* add static assertions for macro {{{CONST_VARIANT_REQUIRED}}} (shows misbehavior).
41 lines of code changed in 1 file:
* update info on preprocessing.
* ignore and allow to delete *.ii (preprocessor output) and *.s (assembler output).
17 lines of code changed in 3 files: