Commit 1669689b by Aaron Leung

Checking for calls to nonexistent functions.

parent 09458571
......@@ -6,7 +6,7 @@
namespace Sass {
using std::cerr; using std::endl;
void eval_error(string message, size_t line_number, const char* file_name)
static void eval_error(string message, size_t line_number, const char* file_name)
{
string fn;
if (file_name) {
......@@ -212,6 +212,11 @@ namespace Sass {
case Node::function_call: {
// TO DO: default-constructed Function should be a generic callback
pair<string, size_t> sig(expr[0].content.token.to_string(), expr[1].size());
if (!f_env.count(sig)) {
stringstream ss;
ss << "no function named " << expr[0].content.token.to_string() << " taking " << expr[1].size() << " arguments has been defined";
eval_error(ss.str(), expr.line_number, expr.file_name);
}
return apply_function(f_env[sig], expr[1], env, f_env);
} break;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment