summaryrefslogtreecommitdiff
path: root/src/decision
diff options
context:
space:
mode:
authorAndres Noetzli <andres.noetzli@gmail.com>2020-01-13 12:26:52 -0800
committerGitHub <noreply@github.com>2020-01-13 12:26:52 -0800
commit4e50d35447b5ee07304d2b857af388ea569db98b (patch)
tree7eb2497463ad1807dd0153b7e60c909f70cabb8d /src/decision
parent81a2e226251bea677f6a920004e846a08072c851 (diff)
Support arbitrary unsigned integer attributes (#3591)
Fixes #3586. On macOS, `size_t` resolves to `unsigned long` whereas `uint64_t` resolves to `unsigned long long`. Even though the types have the same bit-width and signedness, they are not considered the same type. This caused issues with `Attribute`s that store `size_t` values because we only specialized the `getTable()` struct for `uint64_t`. This commit changes the specialization to work for arbitrary unsigned integer types of at most 64-bit. It does that by generalizing the specialization of `getTable()` and by implementing a `KindValueToTableValueMapping` for unsigned integer attributes of up to 64-bit that casts integers between the attributes bit-width and `uint64_t`.
Diffstat (limited to 'src/decision')
0 files changed, 0 insertions, 0 deletions
generated by cgit on debian on lair
contact matthew@masot.net with questions or feedback