error[E0277]: the trait bound `Baz: quantities::HasRefUnit` is not satisfied --> tests/ui/derived_res_no_ref_unit.rs:22:1 | 22 | #[quantity(Foo * Bar)] | ^^^^^^^^^^^^^^^^^^^^^^ the trait `quantities::HasRefUnit` is not implemented for `Baz` | = help: the following other types implement trait `quantities::HasRefUnit`: Acceleration Area Bar DataThroughput DataVolume Energy Foo Force and $N others = help: see issue #48214 = note: this error originates in the attribute macro `quantity` (in Nightly builds, run with -Z macro-backtrace for more info) error[E0277]: the trait bound `BazUnit: quantities::LinearScaledUnit` is not satisfied --> tests/ui/derived_res_no_ref_unit.rs:22:1 | 22 | #[quantity(Foo * Bar)] | ^^^^^^^^^^^^^^^^^^^^^^ the trait `quantities::LinearScaledUnit` is not implemented for `BazUnit` | = help: the following other types implement trait `quantities::LinearScaledUnit`: AccelerationUnit AreaUnit BarUnit DataThroughputUnit DataVolumeUnit DurationUnit EnergyUnit FooUnit and $N others note: required by a bound in `quantities::HasRefUnit` --> src/lib.rs | | pub trait HasRefUnit: Quantity + Add + Sub + Div | ---------- required by a bound in this trait | where | ::UnitType: LinearScaledUnit, | ^^^^^^^^^^^^^^^^ required by this bound in `HasRefUnit` = note: this error originates in the attribute macro `quantity` (in Nightly builds, run with -Z macro-backtrace for more info) error[E0277]: cannot divide `Baz` by `Bar` --> tests/ui/derived_res_no_ref_unit.rs:22:1 | 22 | #[quantity(Foo * Bar)] | ^^^^^^^^^^^^^^^^^^^^^^ no implementation for `Baz / Bar` | = help: the trait `quantities::HasRefUnit` is not implemented for `Baz`, which is required by `Baz: std::ops::Div` note: required for `Baz` to implement `std::ops::Div` --> tests/ui/derived_res_no_ref_unit.rs:22:1 | 22 | #[quantity(Foo * Bar)] | ^^^^^^^^^^^^^^^^^^^^^^ unsatisfied trait bound introduced here 23 | #[unit(Bazoo, "b", "1·f·e")] 24 | struct Baz {} | ^^^ = help: see issue #48214 = note: this error originates in the attribute macro `quantity` (in Nightly builds, run with -Z macro-backtrace for more info) error[E0277]: cannot divide `Baz` by `Foo` --> tests/ui/derived_res_no_ref_unit.rs:22:1 | 22 | #[quantity(Foo * Bar)] | ^^^^^^^^^^^^^^^^^^^^^^ no implementation for `Baz / Foo` | = help: the trait `quantities::HasRefUnit` is not implemented for `Baz`, which is required by `Baz: std::ops::Div` note: required for `Baz` to implement `std::ops::Div` --> tests/ui/derived_res_no_ref_unit.rs:22:1 | 22 | #[quantity(Foo * Bar)] | ^^^^^^^^^^^^^^^^^^^^^^ unsatisfied trait bound introduced here 23 | #[unit(Bazoo, "b", "1·f·e")] 24 | struct Baz {} | ^^^ = help: see issue #48214 = note: this error originates in the attribute macro `quantity` (in Nightly builds, run with -Z macro-backtrace for more info) error[E0599]: no function or associated item named `unit_from_scale` found for struct `Baz` in the current scope --> tests/ui/derived_res_no_ref_unit.rs:22:1 | 22 | #[quantity(Foo * Bar)] | ^^^^^^^^^^^^^^^^^^^^^^ | | | function or associated item not found in `Baz` | function or associated item `unit_from_scale` not found for this struct | = help: items from traits can only be used if the trait is implemented and in scope = note: the following trait defines an item `unit_from_scale`, perhaps you need to implement it: candidate #1: `quantities::HasRefUnit` = note: this error originates in the attribute macro `quantity` (in Nightly builds, run with -Z macro-backtrace for more info) help: there is an associated function `unit_from_symbol` with a similar name | 22 | unit_from_symbol | error[E0277]: the trait bound `BazUnit: quantities::LinearScaledUnit` is not satisfied --> tests/ui/derived_res_no_ref_unit.rs:22:1 | 22 | #[quantity(Foo * Bar)] | ^^^^^^^^^^^^^^^^^^^^^^ the trait `quantities::LinearScaledUnit` is not implemented for `BazUnit` | = help: the following other types implement trait `quantities::LinearScaledUnit`: AccelerationUnit AreaUnit BarUnit DataThroughputUnit DataVolumeUnit DurationUnit EnergyUnit FooUnit and $N others note: required by a bound in `_fit` --> src/lib.rs | | ::UnitType: LinearScaledUnit, | ^^^^^^^^^^^^^^^^ required by this bound in `HasRefUnit::_fit` ... | fn _fit(amount: AmountT) -> Self { | ---- required by a bound in this associated function = note: this error originates in the attribute macro `quantity` (in Nightly builds, run with -Z macro-backtrace for more info) error[E0277]: the trait bound `Baz: quantities::HasRefUnit` is not satisfied --> tests/ui/derived_res_no_ref_unit.rs:22:1 | 22 | #[quantity(Foo * Bar)] | ^^^^^^^^^^^^^^^^^^^^^^ the trait `quantities::HasRefUnit` is not implemented for `Baz` | = help: the following other types implement trait `quantities::HasRefUnit`: Acceleration Area Bar DataThroughput DataVolume Energy Foo Force and $N others = note: this error originates in the attribute macro `quantity` (in Nightly builds, run with -Z macro-backtrace for more info) error[E0599]: no method named `scale` found for enum `BazUnit` in the current scope --> tests/ui/derived_res_no_ref_unit.rs:22:1 | 22 | #[quantity(Foo * Bar)] | ^^^^^^^^^^^^^^^^^^^^^^ | | | method not found in `BazUnit` | method `scale` not found for this enum | = help: items from traits can only be used if the trait is implemented and in scope = note: the following trait defines an item `scale`, perhaps you need to implement it: candidate #1: `quantities::LinearScaledUnit` = note: this error originates in the attribute macro `quantity` (in Nightly builds, run with -Z macro-backtrace for more info)