This commit is contained in:
rogerl%netscape.com 2002-09-11 06:39:10 +00:00
Родитель fd62c3e537
Коммит 66772c1493
1 изменённых файлов: 7 добавлений и 2 удалений

Просмотреть файл

@ -107,10 +107,15 @@ namespace MetaData {
{
LabelStmtNode *l = checked_cast<LabelStmtNode *>(p);
l->labelID = bCon->getLabel();
std::pair<LabelSet::iterator, bool> result = stmtLbl->insert(LabelSet::value_type(&l->name, l->labelID));
if (!result.second)
std::pair<LabelSet::iterator, bool> breakResult = jt->breakTargets->insert(LabelSet::value_type(&l->name, l->labelID));
if (!breakResult.second)
reportError(Exception::syntaxError, "Duplicate statement label", p->pos);
std::pair<LabelSet::iterator, bool> stmtLblResult = stmtLbl->insert(LabelSet::value_type(&l->name, l->labelID));
ValidateStmt(cxt, env, l->stmt, stmtLbl, jt);
jt->breakTargets->erase(breakResult.first);
stmtLbl->erase(stmtLblResult.first);
}
break;
case StmtNode::If: