Lines Matching refs:label
269 bool TargetStackContainsLabel(Handle<String> label);
270 BreakableStatement* LookupBreakTarget(Handle<String> label, bool* ok);
271 IterationStatement* LookupContinueTarget(Handle<String> label, bool* ok);
1727 // trivial labeled break statements 'label: break label' which is
2221 static bool ContainsLabel(ZoneStringList* labels, Handle<String> label) {
2222 ASSERT(!label.is_null());
2225 if (labels->at(i).is_identical_to(label))
2243 Handle<String> label = var->name();
2250 if (ContainsLabel(labels, label) || TargetStackContainsLabel(label)) {
2251 SmartPointer<char> c_string = label->ToCString(DISALLOW_NULLS);
2252 const char* elms[2] = { "Label", *c_string };
2259 labels->Add(label);
2260 // Remove the "ghost" variable that turned out to be a label
2300 Handle<String> label = Handle<String>::null();
2304 label = ParseIdentifier(CHECK_OK);
2308 target = LookupContinueTarget(label, CHECK_OK);
2313 if (!label.is_null()) error_type = Factory::unknown_label_symbol();
2314 Expression* throw_error = NewThrowSyntaxError(error_type, label);
2328 Handle<String> label;
2332 label = ParseIdentifier(CHECK_OK);
2336 if (!label.is_null() && ContainsLabel(labels, label)) {
2341 target = LookupBreakTarget(label, CHECK_OK);
2346 if (!label.is_null()) error_type = Factory::unknown_label_symbol();
2347 Expression* throw_error = NewThrowSyntaxError(error_type, label);
2448 Expression* label = NULL; // NULL expression indicates default case
2451 label = ParseExpression(true, CHECK_OK);
2472 return NEW(CaseClause(label, statements.elements()));
3930 bool Parser::TargetStackContainsLabel(Handle<String> label) {
3933 if (stat != NULL && ContainsLabel(stat->labels(), label))
3940 BreakableStatement* Parser::LookupBreakTarget(Handle<String> label, bool* ok) {
3941 bool anonymous = label.is_null();
3946 (!anonymous && ContainsLabel(stat->labels(), label))) {
3955 IterationStatement* Parser::LookupContinueTarget(Handle<String> label,
3957 bool anonymous = label.is_null();
3963 if (anonymous || ContainsLabel(stat->labels(), label)) {