1 #![warn(clippy::result_large_err)]
3 pub fn small_err() -> Result<(), u128> {
7 pub fn large_err() -> Result<(), [u8; 512]> {
11 pub struct FullyDefinedLargeError {
17 impl FullyDefinedLargeError {
18 pub fn ret() -> Result<(), Self> {
23 pub fn struct_error() -> Result<(), FullyDefinedLargeError> {
27 type Fdlr<T> = std::result::Result<T, FullyDefinedLargeError>;
28 pub fn large_err_via_type_alias<T>(x: T) -> Fdlr<T> {
32 pub fn param_small_error<R>() -> Result<(), (R, u128)> {
36 pub fn param_large_error<R>() -> Result<(), (u128, R, FullyDefinedLargeError)> {
40 pub enum LargeErrorVariants<T> {
46 impl LargeErrorVariants<()> {
47 pub fn large_enum_error() -> Result<(), Self> {
52 trait TraitForcesLargeError {
53 fn large_error() -> Result<(), [u8; 512]> {
60 impl TraitForcesLargeError for TraitImpl {
62 fn large_error() -> Result<(), [u8; 512]> {
67 pub union FullyDefinedUnionError {
69 _or_even: [[u8; 16]; 32],
72 pub fn large_union_err() -> Result<(), FullyDefinedUnionError> {
76 pub union UnionError<T: Copy> {
78 _or_perhaps_even: (T, [u8; 512]),
81 pub fn param_large_union<T: Copy>() -> Result<(), UnionError<T>> {
85 pub struct ArrayError<T, U> {
86 _large_array: [T; 32],
90 pub fn array_error_subst<U>() -> Result<(), ArrayError<i32, U>> {
94 pub fn array_error<T, U>() -> Result<(), ArrayError<(i32, T), U>> {