diff --git a/doc/langref.html.in b/doc/langref.html.in index f934f923f0..c39d15de9d 100644 --- a/doc/langref.html.in +++ b/doc/langref.html.in @@ -3974,7 +3974,7 @@ test "noreturn" {
Another use case for {#syntax#}noreturn{#endsyntax#} is the {#syntax#}exit{#endsyntax#} function:
{#code_begin|test#} {#target_windows#} -pub extern "kernel32" stdcallcc fn ExitProcess(exit_code: c_uint) noreturn; +pub extern "kernel32" fn ExitProcess(exit_code: c_uint) callconv(.Stdcall) noreturn; test "foo" { const value = bar() catch ExitProcess(1); @@ -4008,8 +4008,8 @@ export fn sub(a: i8, b: i8) i8 { return a - b; } // The extern specifier is used to declare a function that will be resolved // at link time, when linking statically, or at runtime, when linking // dynamically. -// The stdcallcc specifier changes the calling convention of the function. -extern "kernel32" stdcallcc fn ExitProcess(exit_code: u32) noreturn; +// The callconv specifier changes the calling convention of the function. +extern "kernel32" fn ExitProcess(exit_code: u32) callconv(.Stdcall) noreturn; extern "c" fn atan2(a: f64, b: f64) f64; // The @setCold builtin tells the optimizer that a function is rarely called. @@ -4018,9 +4018,9 @@ fn abort() noreturn { while (true) {} } -// The nakedcc specifier makes a function not have any function prologue or epilogue. +// The naked calling convention makes a function not have any function prologue or epilogue. // This can be useful when integrating with assembly. -nakedcc fn _start() noreturn { +fn _start() callconv(.Naked) noreturn { abort(); } @@ -10382,9 +10382,7 @@ LinkSection <- KEYWORD_linksection LPAREN Expr RPAREN # Fn specific FnCC - <- KEYWORD_nakedcc - / KEYWORD_stdcallcc - / KEYWORD_extern + <- KEYWORD_extern / KEYWORD_async ParamDecl <- (KEYWORD_noalias / KEYWORD_comptime)? (IDENTIFIER COLON)? ParamType @@ -10648,7 +10646,6 @@ KEYWORD_fn <- 'fn' end_of_word KEYWORD_for <- 'for' end_of_word KEYWORD_if <- 'if' end_of_word KEYWORD_inline <- 'inline' end_of_word -KEYWORD_nakedcc <- 'nakedcc' end_of_word KEYWORD_noalias <- 'noalias' end_of_word KEYWORD_null <- 'null' end_of_word KEYWORD_or <- 'or' end_of_word @@ -10659,7 +10656,6 @@ KEYWORD_pub <- 'pub' end_of_word KEYWORD_resume <- 'resume' end_of_word KEYWORD_return <- 'return' end_of_word KEYWORD_linksection <- 'linksection' end_of_word -KEYWORD_stdcallcc <- 'stdcallcc' end_of_word KEYWORD_struct <- 'struct' end_of_word KEYWORD_suspend <- 'suspend' end_of_word KEYWORD_switch <- 'switch' end_of_word @@ -10681,10 +10677,10 @@ keyword <- KEYWORD_align / KEYWORD_and / KEYWORD_allowzero / KEYWORD_asm / KEYWORD_defer / KEYWORD_else / KEYWORD_enum / KEYWORD_errdefer / KEYWORD_error / KEYWORD_export / KEYWORD_extern / KEYWORD_false / KEYWORD_fn / KEYWORD_for / KEYWORD_if / KEYWORD_inline - / KEYWORD_nakedcc / KEYWORD_noalias / KEYWORD_null / KEYWORD_or + / KEYWORD_noalias / KEYWORD_null / KEYWORD_or / KEYWORD_orelse / KEYWORD_packed / KEYWORD_promise / KEYWORD_pub / KEYWORD_resume / KEYWORD_return / KEYWORD_linksection - / KEYWORD_stdcallcc / KEYWORD_struct / KEYWORD_suspend + / KEYWORD_struct / KEYWORD_suspend / KEYWORD_switch / KEYWORD_test / KEYWORD_threadlocal / KEYWORD_true / KEYWORD_try / KEYWORD_undefined / KEYWORD_union / KEYWORD_unreachable / KEYWORD_usingnamespace / KEYWORD_var / KEYWORD_volatile / KEYWORD_while