Issue #902 has been updated by Jason Harvey.

Status changed from Closed to Re-opened
Assigned to deleted (Puppet Community)

Would fixing this break anything? I have a few hundred classes, so going 
without hyphens is a pain.
----------------------------------------
Bug #902: Qualified-variable names cannot contain hyphens (but class names can)
http://projects.puppetlabs.com/issues/902

Author: Tom Moertel
Status: Re-opened
Priority: Normal
Assigned to: 
Category: language
Target version: 
Patch: None
Affected version: 0.25.4
Keywords: 
Branch: 


Class names can contain hyphens but the qualifiers on qualified variables 
cannot, preventing access to variables within classes that have hyphens in 
their names:

<pre>
class my-class {
    $test = "content"
}
class anotherclass {
    $other = $my-class::test
}
</pre>

Parsing the above manifest results in the following error:

<pre>
err: Could not parse; using old configuration: Could not match '-class::test' 
at /tmp/test.pp:5
</pre>

In the lexer, the disparity can be seen by examining the CLASSNAME and VARIABLE 
tokens:

<pre>
%r{([a-z][-\w]*::)+[a-z][-\w]*} => :CLASSNAME,
%r{\$(\w*::)*\w+} => :VARIABLE
</pre>

One would expect the qualified part of VARIABLE to match the definition of 
CLASSNAME.

Cheers,
Tom



-- 
You have received this notification because you have either subscribed to it, 
or are involved in it.
To change your notification preferences, please click here: 
http://projects.puppetlabs.com/my/account

-- 
You received this message because you are subscribed to the Google Groups 
"Puppet Bugs" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/puppet-bugs?hl=en.

Reply via email to