diff options
Diffstat (limited to 'src/test/incremental/change_private_fn_cc/auxiliary/point.rs')
-rw-r--r-- | src/test/incremental/change_private_fn_cc/auxiliary/point.rs | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/src/test/incremental/change_private_fn_cc/auxiliary/point.rs b/src/test/incremental/change_private_fn_cc/auxiliary/point.rs new file mode 100644 index 000000000..483f20572 --- /dev/null +++ b/src/test/incremental/change_private_fn_cc/auxiliary/point.rs @@ -0,0 +1,25 @@ +pub struct Point { + pub x: f32, + pub y: f32, +} + +fn distance_squared(this: &Point) -> f32 { + #[cfg(cfail1)] + return this.x + this.y; + + #[cfg(cfail2)] + return this.x * this.x + this.y * this.y; +} + +impl Point { + pub fn distance_from_origin(&self) -> f32 { + distance_squared(self).sqrt() + } +} + +impl Point { + pub fn translate(&mut self, x: f32, y: f32) { + self.x += x; + self.y += y; + } +} |