]>
git.proxmox.com Git - rustc.git/blob - src/test/compile-fail/infinite-instantiation.rs
1 // Copyright 2012 The Rust Project Developers. See the COPYRIGHT
2 // file at the top-level directory of this distribution and at
3 // http://rust-lang.org/COPYRIGHT.
5 // Licensed under the Apache License, Version 2.0 <LICENSE-APACHE or
6 // http://www.apache.org/licenses/LICENSE-2.0> or the MIT license
7 // <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your
8 // option. This file may not be copied, modified, or distributed
9 // except according to those terms.
11 // error-pattern: overly deep expansion
15 fn to_option(&self) -> Option
<Self>;
18 impl to_opt
for uint
{
19 fn to_option(&self) -> Option
<uint
> {
24 impl<T
:Copy
> to_opt
for Option
<T
> {
25 fn to_option(&self) -> Option
<Option
<T
>> {
30 fn function
<T
:to_opt
>(counter
: uint
, t
: T
) {
32 function(counter
- 1u, t
.to_option());