File tree Expand file tree Collapse file tree 2 files changed +12
-1
lines changed Expand file tree Collapse file tree 2 files changed +12
-1
lines changed Original file line number Diff line number Diff line change @@ -1246,6 +1246,11 @@ namespace Sass {
1246
1246
}
1247
1247
// if it's a singleton, return it directly; don't wrap it
1248
1248
if (!peek< class_char< static_ops > >(position)) return factor;
1249
+ return parse_operators (factor);
1250
+ }
1251
+
1252
+ Expression* Parser::parse_operators (Expression* factor)
1253
+ {
1249
1254
// parse more factors and operators
1250
1255
vector<Expression*> operands; // factors
1251
1256
vector<Binary_Expression::Type> operators; // ops
@@ -1549,7 +1554,12 @@ namespace Sass {
1549
1554
(*schema) << new (ctx.mem ) Textual (pstate, Textual::DIMENSION, lexed);
1550
1555
}
1551
1556
else if (lex< number >()) {
1552
- (*schema) << new (ctx.mem ) Textual (pstate, Textual::NUMBER, lexed);
1557
+ Expression* factor = new (ctx.mem ) Textual (pstate, Textual::NUMBER, lexed);
1558
+ if (peek< class_char< static_ops > >()) {
1559
+ (*schema) << parse_operators (factor);
1560
+ } else {
1561
+ (*schema) << factor;
1562
+ }
1553
1563
}
1554
1564
else if (lex< hex >()) {
1555
1565
(*schema) << new (ctx.mem ) Textual (pstate, Textual::HEX, unquote (lexed));
Original file line number Diff line number Diff line change @@ -243,6 +243,7 @@ namespace Sass {
243
243
String* parse_ie_property ();
244
244
String* parse_ie_keyword_arg ();
245
245
String_Schema* parse_value_schema (const char * stop);
246
+ Expression* parse_operators (Expression* factor);
246
247
String* parse_identifier_schema ();
247
248
// String_Schema* parse_url_schema();
248
249
If* parse_if_directive (bool else_if = false );
You can’t perform that action at this time.
0 commit comments