| #![allow(dead_code)] //~ ERROR `main` function not found in crate |
| |
| struct Tableau<'a, MP> { |
| provider: &'a MP, |
| } |
| |
| impl<'adapted_matrix_provider, 'original_data, MP> |
| Tableau<'adapted_matrix_provider, AdaptedMatrixProvider<'original_data, MP>> |
| { |
| fn provider(&self) -> &'adapted_matrix_provider AdaptedMatrixProvider</*'original_data,*/ MP> { |
| self.provider |
| } |
| } |
| |
| struct AdaptedMatrixProvider<'a, T> { |
| original_problem: &'a T, |
| } |
| |
| impl<'a, T> AdaptedMatrixProvider<'a, T> { |
| fn clone_with_extra_bound(&self) -> Self { |
| AdaptedMatrixProvider { original_problem: self.original_problem } |
| } |
| } |
| |
| fn create_and_solve_subproblems<'data_provider, 'original_data, MP>( |
| tableau: Tableau<'data_provider, AdaptedMatrixProvider<'original_data, MP>>, |
| ) { |
| let _: AdaptedMatrixProvider<'original_data, MP> = tableau.provider().clone_with_extra_bound(); |
| //~^ ERROR lifetime mismatch |
| } |