Skip to content

Commit 7f5c1cb

Browse files
committed
Enable Propset prefix evaluation
Fixes #1393
1 parent 0ae11a4 commit 7f5c1cb

File tree

2 files changed

+5
-1
lines changed

2 files changed

+5
-1
lines changed

src/debugger.hpp

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -512,6 +512,7 @@ inline void debug_ast(AST_Node* node, std::string ind = "", Env* env = 0)
512512
std::cerr << " [" << prettyprint(expression->value()) << "]";
513513
if (expression->is_delayed()) std::cerr << " [delayed]";
514514
if (expression->sass_fix_1291()) std::cerr << " [sass_fix_1291]";
515+
if (expression->is_interpolant()) std::cerr << " [interpolant]";
515516
if (expression->quote_mark()) std::cerr << " [quote_mark: " << expression->quote_mark() << "]";
516517
std::cerr << " <" << prettyprint(expression->pstate().token.ws_before()) << ">" << std::endl;
517518
} else if (dynamic_cast<String_Constant*>(node)) {
@@ -524,13 +525,15 @@ inline void debug_ast(AST_Node* node, std::string ind = "", Env* env = 0)
524525
std::cerr << " [" << prettyprint(expression->value()) << "]";
525526
if (expression->is_delayed()) std::cerr << " [delayed]";
526527
if (expression->sass_fix_1291()) std::cerr << " [sass_fix_1291]";
528+
if (expression->is_interpolant()) std::cerr << " [interpolant]";
527529
std::cerr << " <" << prettyprint(expression->pstate().token.ws_before()) << ">" << std::endl;
528530
} else if (dynamic_cast<String_Schema*>(node)) {
529531
String_Schema* expression = dynamic_cast<String_Schema*>(node);
530532
std::cerr << ind << "String_Schema " << expression;
531533
std::cerr << " " << expression->concrete_type();
532534
if (expression->is_delayed()) std::cerr << " [delayed]";
533535
if (expression->has_interpolants()) std::cerr << " [has_interpolants]";
536+
if (expression->is_interpolant()) std::cerr << " [interpolant]";
534537
std::cerr << " <" << prettyprint(expression->pstate().token.ws_before()) << ">" << std::endl;
535538
for(auto i : expression->elements()) { debug_ast(i, ind + " ", env); }
536539
} else if (dynamic_cast<String*>(node)) {
@@ -539,6 +542,7 @@ inline void debug_ast(AST_Node* node, std::string ind = "", Env* env = 0)
539542
std::cerr << " " << expression->concrete_type();
540543
std::cerr << " (" << pstate_source_position(node) << ")";
541544
if (expression->sass_fix_1291()) std::cerr << " [sass_fix_1291]";
545+
if (expression->is_interpolant()) std::cerr << " [interpolant]";
542546
std::cerr << " <" << prettyprint(expression->pstate().token.ws_before()) << ">" << std::endl;
543547
} else if (dynamic_cast<Expression*>(node)) {
544548
Expression* expression = dynamic_cast<Expression*>(node);

src/expand.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -121,7 +121,7 @@ namespace Sass {
121121
if (Declaration* dec = static_cast<Declaration*>(stm)) {
122122
String_Schema* combined_prop = new (ctx.mem) String_Schema(p->pstate());
123123
if (!property_stack.empty()) {
124-
*combined_prop << property_stack.back()
124+
*combined_prop << property_stack.back()->perform(&eval)
125125
<< new (ctx.mem) String_Quoted(p->pstate(), "-")
126126
<< dec->property(); // TODO: eval the prop into a string constant
127127
}

0 commit comments

Comments
 (0)