programmed in C and C++. end note]
statement:
labeled-statement
declaration-statement
embedded-statement
embedded-statement:
block
empty-statement
expression-statement
selection-statement
iteration-statement
jump-statement
try-statement
checked-statement
unchecked-statement
lock-statement
using-statement
The embedded-statement nonterminal is used for statements that appear within
other statements. The use of
embedded-statement rather than statement excludes the use of declaration
statements and labeled statements
in these contexts. [Example: The code
void F(bool b) {
if (b)
int i = 44;
}
results in a compile-time error because an if statement requires an
embedded-statement rather than a
statement for its if branch. If this code were permitted, then the variable
i would be declared, but it could
never be used. (Note, however, that by placing i.s declaration in a block,
the example is valid.) end
example]