summaryrefslogtreecommitdiffstats
path: root/lib/puppet
diff options
context:
space:
mode:
Diffstat (limited to 'lib/puppet')
-rw-r--r--lib/puppet/parser/ast/resourceref.rb8
1 files changed, 8 insertions, 0 deletions
diff --git a/lib/puppet/parser/ast/resourceref.rb b/lib/puppet/parser/ast/resourceref.rb
index b0fe5f6d7..e6d486902 100644
--- a/lib/puppet/parser/ast/resourceref.rb
+++ b/lib/puppet/parser/ast/resourceref.rb
@@ -20,6 +20,14 @@ class Puppet::Parser::AST
# We want a lower-case type.
objtype = @type.downcase
+ if scope.builtintype?(objtype)
+ # nothing
+ elsif dtype = scope.finddefine(objtype)
+ objtype = dtype.classname
+ else
+ raise Puppet::ParseError, "Could not find type %s" % objtype
+ end
+
title = @title.safeevaluate(:scope => scope)
return Puppet::Parser::Resource::Reference.new(