summaryrefslogtreecommitdiffstats
path: root/lib/puppet/parser
diff options
context:
space:
mode:
Diffstat (limited to 'lib/puppet/parser')
-rw-r--r--lib/puppet/parser/scope.rb6
1 files changed, 4 insertions, 2 deletions
diff --git a/lib/puppet/parser/scope.rb b/lib/puppet/parser/scope.rb
index 0a182fe1d..bf34d2e29 100644
--- a/lib/puppet/parser/scope.rb
+++ b/lib/puppet/parser/scope.rb
@@ -174,10 +174,12 @@ class Puppet::Parser::Scope
klassname = parts.join("::")
klass = findclass(klassname)
unless klass
- raise Puppet::ParseError, "Could not find class %s" % klassname
+ warning "Could not look up qualified variable '%s'; class %s could not be found" % [name, klassname]
+ return usestring ? "" : :undefined
end
unless kscope = compiler.class_scope(klass)
- raise Puppet::ParseError, "Class %s has not been evaluated so its variables cannot be referenced" % klass.classname
+ warning "Could not look up qualified variable '%s'; class %s has not been evaluated" % [name, klassname]
+ return usestring ? "" : :undefined
end
return kscope.lookupvar(shortname, usestring)
end