1 //===----------------------------------------------------------------------===//
2 //
3 //                     The LLVM Compiler Infrastructure
4 //
5 // This file is dual licensed under the MIT and the University of Illinois Open
6 // Source Licenses. See LICENSE.TXT for details.
7 //
8 //===----------------------------------------------------------------------===//
9 //  Adaptation to Boost of the libcxx
10 //  Copyright 2010 Vicente J. Botet Escriba
11 //  Distributed under the Boost Software License, Version 1.0.
12 //  See http://www.boost.org/LICENSE_1_0.txt
13 
14 #include <boost/ratio/ratio.hpp>
15 
16 template <typename T, typename R>
17 struct S {
18     T val;
19 };
20 
func(S<int,boost::ratio<5,6>> const & s)21 boost::intmax_t func(S<int, boost::ratio<5,6> > const& s) {
22     return s.val*3;
23 }
24 
25 
test()26 boost::intmax_t test() {
27     return func(
28             S<int, boost::ratio_add<
29                 boost::ratio<1,2>,
30                 boost::ratio<1,3>
31             >
32             //~ ::type
33             >()
34             );
35 }
36 
37