blob: e1d438b5c19bb74d0b5ab50d2d5ebd5e9175750a [file] [log] [blame]
// { dg-module-do run }
// { dg-additional-options {-fmodules-ts -fdump-lang-module-graph-blocks} }
export module foo;
// { dg-module-cmi foo }
int i_baz (int i)
{
return i;
}
inline int baz (int i)
{
return i_baz (i);
}
int f_baz (float f)
{
return int (f);
}
inline int baz (float f)
{
return f_baz (f);
}
export template <typename T>
int foo (T t)
{
return baz (t);
}
export inline void user ()
{
foo (1);
foo (1.0f);
}
// { dg-final { scan-lang-dump {Depending definition function_decl:'::foo<float>'} module } }
// { dg-final { scan-lang-dump {Depending definition function_decl:'::foo<int>'} module } }
// { dg-final { scan-lang-dump {\[0\]=specialization definition '::foo<float>'} module } }
// { dg-final { scan-lang-dump {\[0\]=specialization definition '::foo<int>'} module } }