diff options
Diffstat (limited to '')
-rw-r--r-- | src/test/ui/issues/issue-17121.rs | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/src/test/ui/issues/issue-17121.rs b/src/test/ui/issues/issue-17121.rs new file mode 100644 index 000000000..1e7b9f015 --- /dev/null +++ b/src/test/ui/issues/issue-17121.rs @@ -0,0 +1,31 @@ +// check-pass +#![allow(dead_code)] +// pretty-expanded FIXME #23616 + +use std::fs::File; +use std::io::{self, BufReader, Read}; + +struct Lexer<R: Read> +{ + reader: BufReader<R>, +} + +impl<R: Read> Lexer<R> +{ + pub fn new_from_reader(r: R) -> Lexer<R> + { + Lexer{reader: BufReader::new(r)} + } + + pub fn new_from_file(p: &str) -> io::Result<Lexer<File>> + { + Ok(Lexer::new_from_reader(File::open(p)?)) + } + + pub fn new_from_str<'a>(s: &'a str) -> Lexer<&'a [u8]> + { + Lexer::new_from_reader(s.as_bytes()) + } +} + +fn main() {} |