inline void f1(const char* fmt, ...) { __builtin_va_list args; __builtin_va_start(args, fmt); } struct non_trivial_dtor { ~non_trivial_dtor(); }; struct implicit_dtor { non_trivial_dtor d; }; struct uninst_implicit_dtor { non_trivial_dtor d; }; inline void use_implicit_dtor() { implicit_dtor d; } template <typename T> void inst() { } inline void inst_decl() { // cause inst<int>'s declaration to be instantiated, without a definition. (void)sizeof(&inst<int>); inst<float>(); } __attribute__((always_inline)) inline void always_inl() { } asm("narf"); |