Skip to content

Commit cc87670

Browse files
nschonnimgreter
authored andcommitted
Remove unreachable code
Primarily "break" after a return statement that might be intended for style reasons.
1 parent f46e397 commit cc87670

File tree

10 files changed

+107
-142
lines changed

10 files changed

+107
-142
lines changed

src/ast.cpp

Lines changed: 4 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -222,7 +222,6 @@ namespace Sass {
222222
// heads are not equal
223223
else return *l_h < *r_h;
224224
}
225-
return true;
226225
}
227226

228227
bool Complex_Selector::operator== (const Complex_Selector& rhs) const
@@ -326,7 +325,6 @@ namespace Sass {
326325
if (const Complex_Selector* cs = Cast<Complex_Selector>(&rhs)) return *this < *cs;
327326
if (const Compound_Selector* ch = Cast<Compound_Selector>(&rhs)) return *this < *ch;
328327
throw std::runtime_error("invalid selector base classes to compare");
329-
return false;
330328
}
331329

332330
bool Compound_Selector::operator== (const Selector& rhs) const
@@ -366,7 +364,6 @@ namespace Sass {
366364
if (const Complex_Selector* cs = Cast<Complex_Selector>(&rhs)) return *this < *cs;
367365
if (const Compound_Selector* ch = Cast<Compound_Selector>(&rhs)) return *this < *ch;
368366
throw std::runtime_error("invalid selector base classes to compare");
369-
return false;
370367
}
371368

372369
bool Simple_Selector::operator== (const Selector& rhs) const
@@ -452,8 +449,7 @@ namespace Sass {
452449
// advance
453450
++i; ++n;
454451
}
455-
// no mismatch
456-
return true;
452+
// there is no break?!
457453
}
458454

459455
bool Selector_List::operator< (const Selector& rhs) const
@@ -861,8 +857,6 @@ namespace Sass {
861857
if (wrapped->name() == wrapped_r->name()) {
862858
if (wrapped->is_superselector_of(wrapped_r)) {
863859
continue;
864-
rset.insert(lhs->to_string());
865-
866860
}}
867861
}
868862
}
@@ -1010,8 +1004,7 @@ namespace Sass {
10101004
// advance now
10111005
++i; ++n;
10121006
}
1013-
// no mismatch
1014-
return true;
1007+
// there is no break?!
10151008
}
10161009

10171010
bool Complex_Selector::is_superselector_of(Compound_Selector_Obj rhs, std::string wrapping)
@@ -1091,12 +1084,7 @@ namespace Sass {
10911084
{ return false; }
10921085
return lhs->tail()->is_superselector_of(marker->tail());
10931086
}
1094-
else
1095-
{
1096-
return lhs->tail()->is_superselector_of(marker->tail());
1097-
}
1098-
// catch-all
1099-
return false;
1087+
return lhs->tail()->is_superselector_of(marker->tail());
11001088
}
11011089

11021090
size_t Complex_Selector::length() const
@@ -1353,12 +1341,7 @@ namespace Sass {
13531341

13541342
}
13551343
// has no head
1356-
else {
1357-
return this->tails(tails);
1358-
}
1359-
1360-
// unreachable
1361-
return 0;
1344+
return this->tails(tails);
13621345
}
13631346

13641347
Selector_List_Ptr Complex_Selector::tails(Selector_List_Ptr tails)

src/ast.hpp

Lines changed: 49 additions & 49 deletions
Original file line numberDiff line numberDiff line change
@@ -1147,22 +1147,22 @@ namespace Sass {
11471147

11481148
inline static const std::string sass_op_to_name(enum Sass_OP op) {
11491149
switch (op) {
1150-
case AND: return "and"; break;
1151-
case OR: return "or"; break;
1152-
case EQ: return "eq"; break;
1153-
case NEQ: return "neq"; break;
1154-
case GT: return "gt"; break;
1155-
case GTE: return "gte"; break;
1156-
case LT: return "lt"; break;
1157-
case LTE: return "lte"; break;
1158-
case ADD: return "plus"; break;
1159-
case SUB: return "sub"; break;
1160-
case MUL: return "times"; break;
1161-
case DIV: return "div"; break;
1162-
case MOD: return "mod"; break;
1150+
case AND: return "and";
1151+
case OR: return "or";
1152+
case EQ: return "eq";
1153+
case NEQ: return "neq";
1154+
case GT: return "gt";
1155+
case GTE: return "gte";
1156+
case LT: return "lt";
1157+
case LTE: return "lte";
1158+
case ADD: return "plus";
1159+
case SUB: return "sub";
1160+
case MUL: return "times";
1161+
case DIV: return "div";
1162+
case MOD: return "mod";
11631163
// this is only used internally!
1164-
case NUM_OPS: return "[OPS]"; break;
1165-
default: return "invalid"; break;
1164+
case NUM_OPS: return "[OPS]";
1165+
default: return "invalid";
11661166
}
11671167
}
11681168

@@ -1191,42 +1191,42 @@ namespace Sass {
11911191
{ }
11921192
const std::string type_name() {
11931193
switch (optype()) {
1194-
case AND: return "and"; break;
1195-
case OR: return "or"; break;
1196-
case EQ: return "eq"; break;
1197-
case NEQ: return "neq"; break;
1198-
case GT: return "gt"; break;
1199-
case GTE: return "gte"; break;
1200-
case LT: return "lt"; break;
1201-
case LTE: return "lte"; break;
1202-
case ADD: return "add"; break;
1203-
case SUB: return "sub"; break;
1204-
case MUL: return "mul"; break;
1205-
case DIV: return "div"; break;
1206-
case MOD: return "mod"; break;
1194+
case AND: return "and";
1195+
case OR: return "or";
1196+
case EQ: return "eq";
1197+
case NEQ: return "neq";
1198+
case GT: return "gt";
1199+
case GTE: return "gte";
1200+
case LT: return "lt";
1201+
case LTE: return "lte";
1202+
case ADD: return "add";
1203+
case SUB: return "sub";
1204+
case MUL: return "mul";
1205+
case DIV: return "div";
1206+
case MOD: return "mod";
12071207
// this is only used internally!
1208-
case NUM_OPS: return "[OPS]"; break;
1209-
default: return "invalid"; break;
1208+
case NUM_OPS: return "[OPS]";
1209+
default: return "invalid";
12101210
}
12111211
}
12121212
const std::string separator() {
12131213
switch (optype()) {
1214-
case AND: return "&&"; break;
1215-
case OR: return "||"; break;
1216-
case EQ: return "=="; break;
1217-
case NEQ: return "!="; break;
1218-
case GT: return ">"; break;
1219-
case GTE: return ">="; break;
1220-
case LT: return "<"; break;
1221-
case LTE: return "<="; break;
1222-
case ADD: return "+"; break;
1223-
case SUB: return "-"; break;
1224-
case MUL: return "*"; break;
1225-
case DIV: return "/"; break;
1226-
case MOD: return "%"; break;
1214+
case AND: return "&&";
1215+
case OR: return "||";
1216+
case EQ: return "==";
1217+
case NEQ: return "!=";
1218+
case GT: return ">";
1219+
case GTE: return ">=";
1220+
case LT: return "<";
1221+
case LTE: return "<=";
1222+
case ADD: return "+";
1223+
case SUB: return "-";
1224+
case MUL: return "*";
1225+
case DIV: return "/";
1226+
case MOD: return "%";
12271227
// this is only used internally!
1228-
case NUM_OPS: return "[OPS]"; break;
1229-
default: return "invalid"; break;
1228+
case NUM_OPS: return "[OPS]";
1229+
default: return "invalid";
12301230
}
12311231
}
12321232
bool is_left_interpolant(void) const;
@@ -1294,10 +1294,10 @@ namespace Sass {
12941294
{ }
12951295
const std::string type_name() {
12961296
switch (optype_) {
1297-
case PLUS: return "plus"; break;
1298-
case MINUS: return "minus"; break;
1299-
case NOT: return "not"; break;
1300-
default: return "invalid"; break;
1297+
case PLUS: return "plus";
1298+
case MINUS: return "minus";
1299+
case NOT: return "not";
1300+
default: return "invalid";
13011301
}
13021302
}
13031303
virtual bool operator==(const Expression& rhs) const

src/eval.cpp

Lines changed: 5 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -604,11 +604,11 @@ namespace Sass {
604604
switch (op_type) {
605605
case Sass_OP::AND: {
606606
return *lhs ? b->right()->perform(this) : lhs.detach();
607-
} break;
607+
}
608608

609609
case Sass_OP::OR: {
610610
return *lhs ? lhs.detach() : b->right()->perform(this);
611-
} break;
611+
}
612612

613613
default:
614614
break;
@@ -1517,8 +1517,6 @@ namespace Sass {
15171517
v->value(ops[op](lv, r.value() * r.convert_factor(l)));
15181518
// v->normalize();
15191519
return v.detach();
1520-
1521-
v->value(ops[op](lv, tmp.value()));
15221520
}
15231521
v->normalize();
15241522
return v.detach();
@@ -1536,7 +1534,7 @@ namespace Sass {
15361534
ops[op](lv, r.g()),
15371535
ops[op](lv, r.b()),
15381536
r.a());
1539-
} break;
1537+
}
15401538
case Sass_OP::SUB:
15411539
case Sass_OP::DIV: {
15421540
std::string sep(op == Sass_OP::SUB ? "-" : "/");
@@ -1546,10 +1544,10 @@ namespace Sass {
15461544
l.to_string(opt)
15471545
+ sep
15481546
+ color);
1549-
} break;
1547+
}
15501548
case Sass_OP::MOD: {
15511549
throw Exception::UndefinedOperation(&l, &r, sass_op_to_name(op));
1552-
} break;
1550+
}
15531551
default: break; // caller should ensure that we don't get here
15541552
}
15551553
// unreachable

src/functions.cpp

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1214,7 +1214,6 @@ namespace Sass {
12141214
} else {
12151215
throw Exception::InvalidArgumentType(pstate, "random", "$limit", "number");
12161216
}
1217-
return 0;
12181217
}
12191218

12201219
/////////////////

src/parser.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1350,7 +1350,7 @@ namespace Sass {
13501350
case '*': operators.push_back({ Sass_OP::MUL, left_ws != 0, right_ws != 0 }); break;
13511351
case '/': operators.push_back({ Sass_OP::DIV, left_ws != 0, right_ws != 0 }); break;
13521352
case '%': operators.push_back({ Sass_OP::MOD, left_ws != 0, right_ws != 0 }); break;
1353-
default: throw std::runtime_error("unknown static op parsed"); break;
1353+
default: throw std::runtime_error("unknown static op parsed");
13541354
}
13551355
operands.push_back(parse_factor());
13561356
left_ws = peek < css_comments >();

src/sass_context.cpp

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -199,7 +199,6 @@ namespace Sass {
199199
static int handle_errors(Sass_Context* c_ctx) {
200200
try { return handle_error(c_ctx); }
201201
catch (...) { return handle_error(c_ctx); }
202-
return c_ctx->error_status;
203202
}
204203

205204
static Block_Obj sass_parse_block(Sass_Compiler* compiler) throw()

src/sass_values.cpp

Lines changed: 9 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -236,40 +236,40 @@ extern "C" {
236236
switch(val->unknown.tag) {
237237
case SASS_NULL: {
238238
return sass_make_null();
239-
} break;
239+
}
240240
case SASS_BOOLEAN: {
241241
return sass_make_boolean(val->boolean.value);
242-
} break;
242+
}
243243
case SASS_NUMBER: {
244244
return sass_make_number(val->number.value, val->number.unit);
245-
} break;
245+
}
246246
case SASS_COLOR: {
247247
return sass_make_color(val->color.r, val->color.g, val->color.b, val->color.a);
248-
} break;
248+
}
249249
case SASS_STRING: {
250250
return sass_string_is_quoted(val) ? sass_make_qstring(val->string.value) : sass_make_string(val->string.value);
251-
} break;
251+
}
252252
case SASS_LIST: {
253253
union Sass_Value* list = sass_make_list(val->list.length, val->list.separator, val->list.is_bracketed);
254254
for (i = 0; i < list->list.length; i++) {
255255
list->list.values[i] = sass_clone_value(val->list.values[i]);
256256
}
257257
return list;
258-
} break;
258+
}
259259
case SASS_MAP: {
260260
union Sass_Value* map = sass_make_map(val->map.length);
261261
for (i = 0; i < val->map.length; i++) {
262262
map->map.pairs[i].key = sass_clone_value(val->map.pairs[i].key);
263263
map->map.pairs[i].value = sass_clone_value(val->map.pairs[i].value);
264264
}
265265
return map;
266-
} break;
266+
}
267267
case SASS_ERROR: {
268268
return sass_make_error(val->error.message);
269-
} break;
269+
}
270270
case SASS_WARNING: {
271271
return sass_make_warning(val->warning.message);
272-
} break;
272+
}
273273
}
274274

275275
return 0;
@@ -349,9 +349,6 @@ extern "C" {
349349
catch (std::string& e) { return sass_make_error(e.c_str()); }
350350
catch (const char* e) { return sass_make_error(e); }
351351
catch (...) { return sass_make_error("unknown"); }
352-
353-
return 0;
354-
355352
}
356353

357354
}

src/to_value.cpp

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,8 +9,6 @@ namespace Sass {
99
// throw a runtime error if this happens
1010
// we want a well defined set of possible nodes
1111
throw std::runtime_error("invalid node for to_value");
12-
// mute warning
13-
return 0;
1412
}
1513

1614
// Custom_Error is a valid value

0 commit comments

Comments
 (0)