13. A computer-readable storage memory storing computer-executable instructions which when executed cause a computing environment to: receiving an input from a caller, the input comprising the preprocessor conditional directive statement; in order to have information available in each parsing path induced by mutually exclusive branches returned to the caller, serializing the input into a stream of tokens produced by following each parsing path induced by mutually exclusive branches of the preprocessor conditional directive statement interrupting a declaration by: labeling tokens belonging to a first parsing path with a first parsing path indicator; labeling tokens belonging to a second parsing path with a second parsing path indicator; fetching the tokens that belong to the first parsing path in a first pass and returning the tokens that belong to the first parsing path to the caller; and fetching the tokens that belong to the second parsing path in a second pass and returning the tokens that belong to the second parsing path to the caller, wherein parsing paths induced by mutually exclusive branches of the preprocessor conditional directive statement are detected by matching preprocessor conditional directives of the preprocessor conditional directive statement.
13. A computer-readable storage memory storing computer-executable instructions which when executed cause a computing environment to: receiving an input from a caller, the input comprising the preprocessor conditional directive statement; in order to have information available in each parsing path induced by mutually exclusive branches returned to the caller, serializing the input into a stream of tokens produced by following each parsing path induced by mutually exclusive branches of the preprocessor conditional directive statement interrupting a declaration by: labeling tokens belonging to a first parsing path with a first parsing path indicator; labeling tokens belonging to a second parsing path with a second parsing path indicator; fetching the tokens that belong to the first parsing path in a first pass and returning the tokens that belong to the first parsing path to the caller; and fetching the tokens that belong to the second parsing path in a second pass and returning the tokens that belong to the second parsing path to the caller, wherein parsing paths induced by mutually exclusive branches of the preprocessor conditional directive statement are detected by matching preprocessor conditional directives of the preprocessor conditional directive statement. 15. The computer-readable storage memory of claim 13 , storing further computer-executable instructions, which when executed cause the computing environment to generate a token buffer, the token buffer comprising a plurality of tokens of the declaration, wherein each token of the plurality of tokens of the declaration is labeled with at least one parsing path indicator corresponding to a parsing path to which each token belongs.