// { dg-do assemble } // // Copyright (C) 2001, 2003 Free Software Foundation, Inc. // Contributed by Nathan Sidwell 29 Apr 2001 // Bug 2258. We failed to implement using directives inside template // functions. This makes us regress now that ::std is real. namespace thing { template T end2 (T); } namespace whatever { } template void fn (T, T (*)(T)); namespace whatever { template T end3 (T); } template 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); }