Skip to content

Commit 3b4f462

Browse files
committed
Merge pull request #1469 from mgreter/bugfix/err-na-fn-w-kwdarg
Add error for non existing function with keyword arguments
2 parents 66efe5b + 042be39 commit 3b4f462

File tree

2 files changed

+7
-1
lines changed

2 files changed

+7
-1
lines changed

src/debugger.hpp

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -424,6 +424,9 @@ inline void debug_ast(AST_Node* node, std::string ind = "", Env* env = 0)
424424
std::cerr << ind << "Arguments " << expression;
425425
if (expression->is_delayed()) std::cerr << " [delayed]";
426426
std::cerr << " (" << pstate_source_position(node) << ")";
427+
if (expression->has_named_arguments()) std::cerr << " [has_named_arguments]";
428+
if (expression->has_rest_argument()) std::cerr << " [has_rest_argument]";
429+
if (expression->has_keyword_argument()) std::cerr << " [has_keyword_argument]";
427430
std::cerr << std::endl;
428431
for(auto i : expression->elements()) { debug_ast(i, ind + " ", env); }
429432
} else if (dynamic_cast<Argument*>(node)) {

src/eval.cpp

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -615,8 +615,11 @@ namespace Sass {
615615
c->name(),
616616
args);
617617
To_String to_string(&ctx);
618+
if (args->has_named_arguments()) {
619+
error("Function " + c->name() + " doesn't support keyword arguments", c->pstate());
620+
}
618621
return new (ctx.mem) String_Quoted(c->pstate(),
619-
lit->perform(&to_string));
622+
lit->perform(&to_string));
620623
} else {
621624
// call generic function
622625
full_name = "*[f]";

0 commit comments

Comments
 (0)