Skip to content

Commit

Permalink
Rollup merge of #70539 - DutchGhost:test-62220, r=Dylan-DPC
Browse files Browse the repository at this point in the history
add test for 62220

Closes #62220

Adds a test for #62220.

Im not sure whether `check-pass` is sufficient here. I didn't put `run-pass` in, as I'm afraid that'll fail due to the `unimplemented!()` return in the code.
  • Loading branch information
Dylan-DPC authored Mar 29, 2020
2 parents d009ce4 + 61d4193 commit 5a7b377
Showing 1 changed file with 22 additions and 0 deletions.
22 changes: 22 additions & 0 deletions src/test/ui/const-generics/issues/issue-62220.rs
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
// build-pass
#![allow(incomplete_features)]

#![feature(const_generics)]
pub struct Vector<T, const N: usize>([T; N]);

pub type TruncatedVector<T, const N: usize> = Vector<T, { N - 1 }>;

impl<T, const N: usize> Vector<T, { N }> {
/// Drop the last component and return the vector with one fewer dimension.
pub fn trunc(self) -> (TruncatedVector<T, { N }>, T) {
unimplemented!()
}
}

fn vec4<T>(a: T, b: T, c: T, d: T) -> Vector<T, 4> {
Vector([a, b, c, d])
}

fn main() {
let (_xyz, _w): (TruncatedVector<u32, 4>, u32) = vec4(0u32, 1, 2, 3).trunc();
}

0 comments on commit 5a7b377

Please sign in to comment.