Since `Base.Checked` originally targets integer arithmetic, no fallback is provided for non-integer types. https://github.com/JuliaLang/julia/blob/d84cd4d5ff0e7a51ae5ad4c1a9ac7b2999bd242e/base/checked.jl#L18-L30 It is easy to get method errors for user-/package-defined types because `@checked` replaces operators regardless of the existence of the methods. Of course, it's unsafe to fall back to unchecked methods, but this seems to be a necessary measure for convenience.