Update with comments
A bunch of nits fixed, and a new test for pretty printing the AST.
This commit is contained in:
parent
9fe793ae5d
commit
ea2af70466
11 changed files with 69 additions and 17 deletions
20
src/test/ui/const-generics/defaults/default-annotation.rs
Normal file
20
src/test/ui/const-generics/defaults/default-annotation.rs
Normal file
|
|
@ -0,0 +1,20 @@
|
|||
// run-pass
|
||||
#![feature(staged_api)]
|
||||
|
||||
#![feature(const_generics)]
|
||||
#![feature(const_generics_defaults)]
|
||||
#![allow(incomplete_features)]
|
||||
|
||||
#![stable(feature = "const_default_test", since="none")]
|
||||
|
||||
|
||||
#[unstable(feature = "const_default_stable", issue="none")]
|
||||
pub struct ConstDefaultUnstable<const N: usize = 3>;
|
||||
|
||||
#[stable(feature = "const_default_unstable", since="none")]
|
||||
pub struct ConstDefaultStable<const N: usize = {
|
||||
#[stable(feature = "const_default_unstable_val", since="none")]
|
||||
3
|
||||
}>;
|
||||
|
||||
fn main() {}
|
||||
13
src/test/ui/const-generics/defaults/pretty-printing-ast.rs
Normal file
13
src/test/ui/const-generics/defaults/pretty-printing-ast.rs
Normal file
|
|
@ -0,0 +1,13 @@
|
|||
// Test the AST pretty printer correctly handles default values for const generics
|
||||
// check-pass
|
||||
// compile-flags: -Z unpretty=expanded
|
||||
|
||||
#![crate_type = "lib"]
|
||||
#![feature(const_generics_defaults)]
|
||||
#![allow(incomplete_features)]
|
||||
|
||||
trait Foo<const KIND: bool = true> {}
|
||||
|
||||
fn foo<const SIZE: usize = 5>() {}
|
||||
|
||||
struct Range<const FROM: usize = 0, const LEN: usize = 0, const TO: usize = {FROM + LEN}>;
|
||||
|
|
@ -0,0 +1,20 @@
|
|||
#![feature(prelude_import)]
|
||||
#![no_std]
|
||||
// Test the AST pretty printer correctly handles default values for const generics
|
||||
// check-pass
|
||||
// compile-flags: -Z unpretty=expanded
|
||||
|
||||
#![crate_type = "lib"]
|
||||
#![feature(const_generics_defaults)]
|
||||
#![allow(incomplete_features)]
|
||||
#[prelude_import]
|
||||
use ::std::prelude::rust_2015::*;
|
||||
#[macro_use]
|
||||
extern crate std;
|
||||
|
||||
trait Foo<const KIND : bool = true> { }
|
||||
|
||||
fn foo<const SIZE : usize = 5>() { }
|
||||
|
||||
struct Range<const FROM : usize = 0, const LEN : usize = 0, const TO : usize =
|
||||
{ FROM + LEN }>;
|
||||
Loading…
Add table
Add a link
Reference in a new issue