@@ -9,6 +9,7 @@ $(H2 $(LNAME2 grammar, Function Declarations))
99$(GRAMMAR
1010$(GNAME FuncDeclaration):
1111 $(GLINK2 declaration, StorageClasses)$(OPT) $(GLINK2 type, BasicType) $(GLINK FuncDeclarator) $(GLINK FunctionBody)
12+ $(GLINK2 declaration, StorageClasses)$(OPT) $(GLINK2 type, BasicType) $(GLINK FuncDeclarator) $(GLINK MissingFunctionBody)
1213 $(GLINK AutoFuncDeclaration)
1314
1415$(GNAME AutoFuncDeclaration):
@@ -116,7 +117,6 @@ $(GRAMMAR
116117$(GNAME FunctionBody):
117118 $(GLINK SpecifiedFunctionBody)
118119 $(GLINK ShortenedFunctionBody)
119- $(GLINK MissingFunctionBody)
120120
121121$(GNAME SpecifiedFunctionBody):
122122 $(D do)$(OPT) $(GLINK2 statement, BlockStatement)
@@ -3448,21 +3448,17 @@ $(H2 $(LNAME2 main, $(D main()) Function))
34483448 $(D main()) must be declared as follows:
34493449 )
34503450
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+ )
34663462
34673463 $(UL
34683464 $(LI If `main` returns `void`, the OS will receive a zero value on success.)
@@ -3493,14 +3489,14 @@ $(H2 $(LNAME2 main, $(D main()) Function))
34933489
34943490 $(P A C $(D main) function must be declared as follows:)
34953491
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)
34993495
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+ )
35043500
35053501 $(P When defined, the first two parameters denote a C-style array (length + pointer)
35063502 that holds the arguments passed to the program by the OS. The third parameter is a POSIX
0 commit comments