{ skipWhitespace (); if (tryRead ("INCLUDE")) { skipWhitespace (); require ('[');  if (readBuffer != saved) handler.verror ("Illegal Conditional Section/PE nesting"); skipWhitespace (); while (!tryRead ("]]>")) { parseMarkupdecl (); skipWhitespace (); } } else if (tryRead ("IGNORE")) { skipWhitespace (); require ('[');  if (readBuffer != saved) handler.verror ("Illegal Conditional Section/PE nesting"); int nesting = 1; char c; expandPE = false; for (int nest = 1; nest > 0;) { c = readCh (); switch (c) { case '<': if (tryRead ("![")) { nest++; } case ']': if (tryRead ("]>")) { nest--; } } } expandPE = true; } else { error ("conditional section must begin with INCLUDE or IGNORE"); } }
{ skipWhitespace(); if (tryRead("INCLUDE")) { skipWhitespace(); require('[');  if (readBuffer != saved) { handler.verror("Illegal Conditional Section/PE nesting"); } skipWhitespace(); while (!tryRead("]]>")) { parseMarkupdecl(); skipWhitespace(); } } else if (tryRead("IGNORE")) { skipWhitespace(); require('[');  if (readBuffer != saved) { handler.verror("Illegal Conditional Section/PE nesting"); } int nesting = 1; char c; expandPE = false; for (int nest = 1; nest > 0; ) { c = readCh(); switch (c) { case '<': if (tryRead("![")) { nest++; } case ']': if (tryRead("]>")) { nest--; } } } expandPE = true; } else { error("conditional section must begin with INCLUDE or IGNORE"); } }
    private void parseConditionalSect (char saved [])    throws Exception    {	skipWhitespace ();	if (tryRead ("INCLUDE")) {	    skipWhitespace ();	    require ('[');	    // VC: Proper Conditional Section/PE Nesting	    if (readBuffer != saved)		handler.verror ("Illegal Conditional Section/PE nesting");	    skipWhitespace ();	    while (!tryRead ("]]>")) {		parseMarkupdecl ();		skipWhitespace ();	    }	} else if (tryRead ("IGNORE")) {	    skipWhitespace ();	    require ('[');	    // VC: Proper Conditional Section/PE Nesting	    if (readBuffer != saved)		handler.verror ("Illegal Conditional Section/PE nesting");	    int nesting = 1;	    char c;	    expandPE = false;	    for (int nest = 1; nest > 0;) {		c = readCh ();		switch (c) {		case '<':		    if (tryRead ("![")) {			nest++;		    }		case ']':		    if (tryRead ("]>")) {			nest--;		    }		}	    }	    expandPE = true;	} else {	    error ("conditional section must begin with INCLUDE or IGNORE");	}    }