Return: Program.SourceElement.FunctionDeclaration Return: FunctionBody.FunctionDeclaration Return: Block.StatementList.Statement.FunctionDeclaration Exception: IfStatement.Statement.FunctionDeclaration - SyntaxError Exception: IterationStatement(do-while).Statement.FunctionDeclaration - SyntaxError Exception: IterationStatement(while).Statement.FunctionDeclaration - SyntaxError Exception: IterationStatement(for).Statement.FunctionDeclaration - SyntaxError Exception: IterationStatement(for-in).Statement.FunctionDeclaration - SyntaxError Return: SourceElement.Statement.LabelledStatement.Statement.FunctionDeclaration Return: Block.Statement.LabelledStatement.Statement.FunctionDeclaration Return: SwitchStatement.CaseBlock.CaseClause.StatementList.Statement.FunctionDeclaration Return: SwitchStatement.CaseBlock.DefaultClause.StatementList.Statement.FunctionDeclaration Return: SwitchStatement.CaseBlock.DefaultClause.StatementList.Statement.FunctionDeclaration Return: TryStatement.Block.StatementList.Statement.FunctionDeclaration Return: TryStatement.Catch.Block.StatementList.Statement.FunctionDeclaration Return: TryStatement.Finally.Block.StatementList.Statement.FunctionDeclaration