// { dg-do assemble } // // Copyright (C) 2001, 2003 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 29 Apr 2001 <nathan@codesourcery.com> // Bug 2258. We failed to implement using directives inside template // functions. This makes us regress now that ::std is real. namespace thing { template <typename T> T end2 (T); } namespace whatever { } template <typename T> void fn (T, T (*)(T)); namespace whatever { template <typename T> T end3 (T); } template <class T> void mycout(const T& data) { using namespace thing; using namespace whatever; fn (data, end2); fn (data, end3); } int main() { double data = 5.0; mycout(data); }