Commit 99adda9df5

John Schmidt <3405586+schmee@users.noreply.github.com>
2019-02-18 23:53:41
Some function doc tweaks (#1961)
* Add docs for the inline function attribute * Remove outdated comment Seems like a leftover from when implicit returns were around. * Consistent terminology
1 parent 0430900
Changed files (1)
doc/langref.html.in
@@ -3169,7 +3169,6 @@ const assert = @import("std").debug.assert;
 // Functions are declared like this
 fn add(a: i8, b: i8) i8 {
     if (a == 0) {
-        // You can still return manually if needed.
         return b;
     }
 
@@ -3193,12 +3192,18 @@ fn abort() noreturn {
     while (true) {}
 }
 
-// nakedcc makes a function not have any function prologue or epilogue.
+// The nakedcc specifier makes a function not have any function prologue or epilogue.
 // This can be useful when integrating with assembly.
 nakedcc fn _start() noreturn {
     abort();
 }
 
+// The inline specifier forces a function to be inlined at all call sites.
+// If the function cannot be inlined, it is a compile-time error.
+inline fn shiftLeftOne(a: u32) u32 {
+    return a << 1;
+}
+
 // The pub specifier allows the function to be visible when importing.
 // Another file can use @import and call sub2
 pub fn sub2(a: i8, b: i8) i8 { return a - b; }