
Сообщение от
Vitamin
Для ScaleFunctor есть специализация для uint64_t, для остальных используется общий шаблон. А функция Scale спецализирована для всех целочисленных типов. Что там за std::size_t такой?
long unsigned int
Вот лог сборки на билдере до фикса: https://build.haiku-os.org/buildmast...ilds/77060.log
Код:
/sources/zxtune-d1e9526f9ca945eff79f09087b4ed75e58f050e7/src/core/plugins/archives/raw_supp.cpp:335:39: required from here
../../../../src/math/scale.h:81:19: error: call of overloaded 'Scale(long unsigned int&, const long unsigned int&, const long unsigned int&)' is ambiguous
81 | return Scale(value, InRange, OutRange);
| ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
../../../../src/math/scale.h:21:18: note: candidate: 'uint8_t Math::Scale(uint8_t, uint8_t, uint8_t)'
21 | inline uint8_t Scale(uint8_t value, uint8_t inRange, uint8_t outRange)
| ^~~~~
../../../../src/math/scale.h:26:19: note: candidate: 'uint16_t Math::Scale(uint16_t, uint16_t, uint16_t)'
26 | inline uint16_t Scale(uint16_t value, uint16_t inRange, uint16_t outRange)
| ^~~~~
../../../../src/math/scale.h:31:19: note: candidate: 'uint32_t Math::Scale(uint32_t, uint32_t, uint32_t)'
31 | inline uint32_t Scale(uint32_t value, uint32_t inRange, uint32_t outRange)
| ^~~~~
../../../../src/math/scale.h:48:19: note: candidate: 'uint64_t Math::Scale(uint64_t, uint64_t, uint64_t)'
48 | inline uint64_t Scale(uint64_t value, uint64_t inRange, uint64_t outRange)
| ^~~~~