@@ -9,6 +9,7 @@ $(H2 $(LNAME2 grammar, Function Declarations))
9
9
$(GRAMMAR
10
10
$(GNAME FuncDeclaration):
11
11
$(GLINK2 declaration, StorageClasses)$(OPT) $(GLINK2 type, BasicType) $(GLINK FuncDeclarator) $(GLINK FunctionBody)
12
+ $(GLINK2 declaration, StorageClasses)$(OPT) $(GLINK2 type, BasicType) $(GLINK FuncDeclarator) $(GLINK MissingFunctionBody)
12
13
$(GLINK AutoFuncDeclaration)
13
14
14
15
$(GNAME AutoFuncDeclaration):
@@ -116,7 +117,6 @@ $(GRAMMAR
116
117
$(GNAME FunctionBody):
117
118
$(GLINK SpecifiedFunctionBody)
118
119
$(GLINK ShortenedFunctionBody)
119
- $(GLINK MissingFunctionBody)
120
120
121
121
$(GNAME SpecifiedFunctionBody):
122
122
$(D do)$(OPT) $(GLINK2 statement, BlockStatement)
@@ -3448,21 +3448,17 @@ $(H2 $(LNAME2 main, $(D main()) Function))
3448
3448
$(D main()) must be declared as follows:
3449
3449
)
3450
3450
3451
- $(GRAMMAR
3452
- $(GNAME MainFunction):
3453
- $(GLINK MainReturnDecl) $(D main$(LPAREN)$(RPAREN)) $(GLINK2 statement, MainFunctionBody)
3454
- $(GLINK MainReturnDecl) $(D main$(LPAREN)string[]) $(GLINK_LEX Identifier)$(D $(RPAREN)) $(GLINK2 statement, MainFunctionBody)
3455
-
3456
- $(GNAME MainReturnDecl):
3457
- $(D void)
3458
- $(D int)
3459
- $(GLINK2 type, noreturn)
3460
- $(RELATIVE_LINK2 auto-functions, $(D auto))
3461
-
3462
- $(GNAME MainFunctionBody):
3463
- $(GLINK ShortenedFunctionBody)
3464
- $(GLINK SpecifiedFunctionBody)
3465
- )
3451
+ $(GRAMMAR
3452
+ $(GNAME MainFunction):
3453
+ $(GLINK MainReturnDecl) $(D main$(LPAREN)$(RPAREN)) $(GLINK FunctionBody)
3454
+ $(GLINK MainReturnDecl) $(D main$(LPAREN)string[]) $(GLINK_LEX Identifier)$(D $(RPAREN)) $(GLINK FunctionBody)
3455
+
3456
+ $(GNAME MainReturnDecl):
3457
+ $(D void)
3458
+ $(D int)
3459
+ $(GLINK2 type, noreturn)
3460
+ $(RELATIVE_LINK2 auto-functions, $(D auto))
3461
+ )
3466
3462
3467
3463
$(UL
3468
3464
$(LI If `main` returns `void`, the OS will receive a zero value on success.)
@@ -3493,14 +3489,14 @@ $(H2 $(LNAME2 main, $(D main()) Function))
3493
3489
3494
3490
$(P A C $(D main) function must be declared as follows:)
3495
3491
3496
- $(GRAMMAR
3497
- $(GNAME CMainFunction):
3498
- $(D extern (C)) $(GLINK MainReturnDecl) $(D main$(LPAREN)$(GLINK CmainParameters)$(OPT)$(RPAREN)) $(GLINK2 statement, BlockStatement)
3492
+ $(GRAMMAR
3493
+ $(GNAME CMainFunction):
3494
+ $(D extern (C)) $(GLINK MainReturnDecl) $(D main$(LPAREN)$(GLINK CmainParameters)$(OPT)$(RPAREN)) $(GLINK2 statement, BlockStatement)
3499
3495
3500
- $(GNAME CmainParameters):
3501
- $(D int) $(GLINK_LEX Identifier), $(D char**) $(GLINK_LEX Identifier)
3502
- $(D int) $(GLINK_LEX Identifier), $(D char**) $(GLINK_LEX Identifier), $(D char**) $(GLINK_LEX Identifier)
3503
- )
3496
+ $(GNAME CmainParameters):
3497
+ $(D int) $(GLINK_LEX Identifier), $(D char**) $(GLINK_LEX Identifier)
3498
+ $(D int) $(GLINK_LEX Identifier), $(D char**) $(GLINK_LEX Identifier), $(D char**) $(GLINK_LEX Identifier)
3499
+ )
3504
3500
3505
3501
$(P When defined, the first two parameters denote a C-style array (length + pointer)
3506
3502
that holds the arguments passed to the program by the OS. The third parameter is a POSIX
0 commit comments