diff options
Diffstat (limited to 'tests/ui/misnamed_getters.fixed')
| -rw-r--r-- | tests/ui/misnamed_getters.fixed | 143 |
1 files changed, 143 insertions, 0 deletions
diff --git a/tests/ui/misnamed_getters.fixed b/tests/ui/misnamed_getters.fixed new file mode 100644 index 00000000000..2a7a2067ee0 --- /dev/null +++ b/tests/ui/misnamed_getters.fixed @@ -0,0 +1,143 @@ +#![allow(unused)] +#![warn(clippy::misnamed_getters)] + +struct A { + a: u8, + b: u8, + c: u8, +} + +impl A { + fn a(&self) -> &u8 { + //~^ ERROR: getter function appears to return the wrong field + //~| NOTE: `-D clippy::misnamed-getters` implied by `-D warnings` + &self.a + } + fn a_mut(&mut self) -> &mut u8 { + //~^ ERROR: getter function appears to return the wrong field + &mut self.a + } + + fn b(self) -> u8 { + //~^ ERROR: getter function appears to return the wrong field + self.b + } + + fn b_mut(&mut self) -> &mut u8 { + //~^ ERROR: getter function appears to return the wrong field + &mut self.b + } + + fn c(&self) -> &u8 { + //~^ ERROR: getter function appears to return the wrong field + &self.c + } + + fn c_mut(&mut self) -> &mut u8 { + //~^ ERROR: getter function appears to return the wrong field + &mut self.c + } +} + +union B { + a: u8, + b: u8, +} + +impl B { + unsafe fn a(&self) -> &u8 { + //~^ ERROR: getter function appears to return the wrong field + &self.a + } + unsafe fn a_mut(&mut self) -> &mut u8 { + //~^ ERROR: getter function appears to return the wrong field + &mut self.a + } + + unsafe fn b(self) -> u8 { + //~^ ERROR: getter function appears to return the wrong field + self.b + } + + unsafe fn b_mut(&mut self) -> &mut u8 { + //~^ ERROR: getter function appears to return the wrong field + &mut self.b + } + + unsafe fn c(&self) -> &u8 { + &self.b + } + + unsafe fn c_mut(&mut self) -> &mut u8 { + &mut self.a + } + + unsafe fn a_unchecked(&self) -> &u8 { + //~^ ERROR: getter function appears to return the wrong field + &self.a + } + unsafe fn a_unchecked_mut(&mut self) -> &mut u8 { + //~^ ERROR: getter function appears to return the wrong field + &mut self.a + } + + unsafe fn b_unchecked(self) -> u8 { + //~^ ERROR: getter function appears to return the wrong field + self.b + } + + unsafe fn b_unchecked_mut(&mut self) -> &mut u8 { + //~^ ERROR: getter function appears to return the wrong field + &mut self.b + } + + unsafe fn c_unchecked(&self) -> &u8 { + &self.b + } + + unsafe fn c_unchecked_mut(&mut self) -> &mut u8 { + &mut self.a + } +} + +struct D { + d: u8, + inner: A, +} + +impl core::ops::Deref for D { + type Target = A; + fn deref(&self) -> &A { + &self.inner + } +} + +impl core::ops::DerefMut for D { + fn deref_mut(&mut self) -> &mut A { + &mut self.inner + } +} + +impl D { + fn a(&self) -> &u8 { + //~^ ERROR: getter function appears to return the wrong field + &self.a + } + fn a_mut(&mut self) -> &mut u8 { + //~^ ERROR: getter function appears to return the wrong field + &mut self.a + } + + fn d(&self) -> &u8 { + //~^ ERROR: getter function appears to return the wrong field + &self.d + } + fn d_mut(&mut self) -> &mut u8 { + //~^ ERROR: getter function appears to return the wrong field + &mut self.d + } +} + +fn main() { + // test code goes here +} |
