@@ -10,6 +10,11 @@ namespace fast_io
1010
1111template <::std::uint_least64_t syscall_number, ::std::signed_integral return_value_type>
1212 requires (1 < sizeof (return_value_type))
13+ #if __has_cpp_attribute(__gnu__::__always_inline__)
14+ [[__gnu__::__always_inline__]]
15+ #else
16+ #error "system_call must be inlined"
17+ #endif
1318inline return_value_type system_call () noexcept
1419{
1520 register ::std::uint_least64_t a7 __asm__ (" $a7" ) = syscall_number;
@@ -21,6 +26,11 @@ inline return_value_type system_call() noexcept
2126
2227template <::std::uint_least64_t syscall_number, ::std::signed_integral return_value_type>
2328 requires (1 < sizeof (return_value_type))
29+ #if __has_cpp_attribute(__gnu__::__always_inline__)
30+ [[__gnu__::__always_inline__]]
31+ #else
32+ #error "system_call must be inlined"
33+ #endif
2434inline return_value_type system_call (auto p1) noexcept
2535{
2636 register ::std::uint_least64_t a7 __asm__ (" $a7" ) = syscall_number;
@@ -31,6 +41,11 @@ inline return_value_type system_call(auto p1) noexcept
3141}
3242
3343template <::std::uint_least64_t syscall_number>
44+ #if __has_cpp_attribute(__gnu__::__always_inline__)
45+ [[__gnu__::__always_inline__]]
46+ #else
47+ #error "system_call must be inlined"
48+ #endif
3449inline void system_call_no_return (auto p1) noexcept
3550{
3651 register ::std::uint_least64_t a7 __asm__ (" $a7" ) = syscall_number;
@@ -42,6 +57,11 @@ inline void system_call_no_return(auto p1) noexcept
4257
4358template <::std::uint_least64_t syscall_number, ::std::signed_integral return_value_type>
4459 requires (1 < sizeof (return_value_type))
60+ #if __has_cpp_attribute(__gnu__::__always_inline__)
61+ [[__gnu__::__always_inline__]]
62+ #else
63+ #error "system_call must be inlined"
64+ #endif
4565inline return_value_type system_call (auto p1, auto p2) noexcept
4666{
4767 register ::std::uint_least64_t a7 __asm__ (" $a7" ) = syscall_number;
@@ -54,6 +74,11 @@ inline return_value_type system_call(auto p1, auto p2) noexcept
5474
5575template <::std::uint_least64_t syscall_number, ::std::signed_integral return_value_type>
5676 requires (1 < sizeof (return_value_type))
77+ #if __has_cpp_attribute(__gnu__::__always_inline__)
78+ [[__gnu__::__always_inline__]]
79+ #else
80+ #error "system_call must be inlined"
81+ #endif
5782inline return_value_type system_call (auto p1, auto p2, auto p3) noexcept
5883{
5984 register ::std::uint_least64_t a7 __asm__ (" $a7" ) = syscall_number;
@@ -67,6 +92,11 @@ inline return_value_type system_call(auto p1, auto p2, auto p3) noexcept
6792
6893template <::std::uint_least64_t syscall_number, ::std::signed_integral return_value_type>
6994 requires (1 < sizeof (return_value_type))
95+ #if __has_cpp_attribute(__gnu__::__always_inline__)
96+ [[__gnu__::__always_inline__]]
97+ #else
98+ #error "system_call must be inlined"
99+ #endif
70100inline return_value_type system_call (auto p1, auto p2, auto p3, auto p4) noexcept
71101{
72102 register ::std::uint_least64_t a7 __asm__ (" $a7" ) = syscall_number;
@@ -81,6 +111,11 @@ inline return_value_type system_call(auto p1, auto p2, auto p3, auto p4) noexcep
81111
82112template <::std::uint_least64_t syscall_number, ::std::signed_integral return_value_type>
83113 requires (1 < sizeof (return_value_type))
114+ #if __has_cpp_attribute(__gnu__::__always_inline__)
115+ [[__gnu__::__always_inline__]]
116+ #else
117+ #error "system_call must be inlined"
118+ #endif
84119inline return_value_type system_call (auto p1, auto p2, auto p3, auto p4, auto p5) noexcept
85120{
86121 register ::std::uint_least64_t a7 __asm__ (" $a7" ) = syscall_number;
@@ -96,6 +131,11 @@ inline return_value_type system_call(auto p1, auto p2, auto p3, auto p4, auto p5
96131
97132template <::std::uint_least64_t syscall_number, ::std::signed_integral return_value_type>
98133 requires (1 < sizeof (return_value_type))
134+ #if __has_cpp_attribute(__gnu__::__always_inline__)
135+ [[__gnu__::__always_inline__]]
136+ #else
137+ #error "system_call must be inlined"
138+ #endif
99139inline return_value_type system_call (auto p1, auto p2, auto p3, auto p4, auto p5, auto p6) noexcept
100140{
101141 register ::std::uint_least64_t a7 __asm__ (" $a7" ) = syscall_number;
0 commit comments