diff options
author | Marius Kintel <marius@kintel.net> | 2014-01-03 18:58:13 (GMT) |
---|---|---|
committer | Marius Kintel <marius@kintel.net> | 2014-01-03 18:58:13 (GMT) |
commit | 064247ae5e3975c3e9f529f4a4c4a0546892d96f (patch) | |
tree | b2a11e24e73a26fc4f6551982a1677d261dea9e5 /src/modcontext.cc | |
parent | 8dca991045a9f0563e6b654b1b946e5d778e8fd2 (diff) | |
parent | c4a1d855f11d076d30e98f799315446da021514a (diff) |
Merge branch 'master' of github.com:openscad/openscad
Diffstat (limited to 'src/modcontext.cc')
-rw-r--r-- | src/modcontext.cc | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/src/modcontext.cc b/src/modcontext.cc index 7941cf5..21b04fd 100644 --- a/src/modcontext.cc +++ b/src/modcontext.cc @@ -95,7 +95,12 @@ void ModuleContext::registerBuiltin() const AbstractFunction *ModuleContext::findLocalFunction(const std::string &name) const { if (this->functions_p && this->functions_p->find(name) != this->functions_p->end()) { - return this->functions_p->find(name)->second; + AbstractFunction *f = this->functions_p->find(name)->second; + if (!f->is_enabled()) { + PRINTB("WARNING: Experimental builtin function '%s' is not enabled.", name); + return NULL; + } + return f; } return NULL; } @@ -104,6 +109,10 @@ const AbstractModule *ModuleContext::findLocalModule(const std::string &name) co { if (this->modules_p && this->modules_p->find(name) != this->modules_p->end()) { AbstractModule *m = this->modules_p->find(name)->second; + if (!m->is_enabled()) { + PRINTB("WARNING: Experimental builtin module '%s' is not enabled.", name); + return NULL; + } std::string replacement = Builtins::instance()->isDeprecated(name); if (!replacement.empty()) { PRINTB("DEPRECATED: The %s() module will be removed in future releases. Use %s() instead.", name % replacement); |