What happens when you have nested code blocks like follows:
Note: this is just an example. The actual code I'm working with is
much, much messier.

example:
IF ( validnumber(i) )
{ /* outer code block */

{ /* inner code block */

/* do something in here */
}

}

The inner code block is surrounded by { } but it doesn't follow
a conditional statement, or function name.

Does anyone know whether the program will move from the outer code block
into the inner code block and then out again back to the outer
code block?

Or will the compiler complain?

The reason I ask is that I'm working with some code that uses a lot of macro string substitution,
and in some cases code blocks may or may not end up with
leading IF conditions statements after the preprocessor is done
with it.

Please help.