1*0a6a1f1dSLionel Sambuc namespace std { 2*0a6a1f1dSLionel Sambuc template<typename> struct mersenne_twister_engine { 3*0a6a1f1dSLionel Sambuc friend bool operator==(const mersenne_twister_engine &, 4*0a6a1f1dSLionel Sambuc const mersenne_twister_engine &) { 5*0a6a1f1dSLionel Sambuc return false; 6*0a6a1f1dSLionel Sambuc } 7*0a6a1f1dSLionel Sambuc }; 8*0a6a1f1dSLionel Sambuc struct random_device { 9*0a6a1f1dSLionel Sambuc mersenne_twister_engine<int> mt; // require complete type 10*0a6a1f1dSLionel Sambuc }; 11*0a6a1f1dSLionel Sambuc } 12*0a6a1f1dSLionel Sambuc 13