You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@ant.apache.org by bu...@apache.org on 2004/06/03 12:32:59 UTC

DO NOT REPLY [Bug 29347] - Nested property expansion shouldn't occur but does

DO NOT REPLY TO THIS EMAIL, BUT PLEASE POST YOUR BUG 
RELATED COMMENTS THROUGH THE WEB INTERFACE AVAILABLE AT
<http://issues.apache.org/bugzilla/show_bug.cgi?id=29347>.
ANY REPLY MADE TO THIS MESSAGE WILL NOT BE COLLECTED AND 
INSERTED IN THE BUG DATABASE.

http://issues.apache.org/bugzilla/show_bug.cgi?id=29347

Nested property expansion shouldn't occur but does





------- Additional Comments From j_a_fernandez@yahoo.com  2004-06-03 10:32 -------

Well, the whole reason for not having nested property expansion is that the 
parser does not do recursive nesting of brakets, which means that it cannot
detect that you are in a nested situation. It it were able to detect the case,
then I am almost certain we would allow nested expansion instead forbid it.

Looking at your example, you have:
   ${${a}.${b}}
the syntax for a property is: <prop> --> '${' <name>'}'  and <name> --> [^}]*

which means the above gets interpreted as:
  '${' "${a" '}' '.' '${' "b" '}' '}'
- property "${a" does not exist so it is printed out textually
- property "b" does exists, hence it is expanded

If we change this to understand recursion, we may as well do nested expansions.

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@ant.apache.org
For additional commands, e-mail: dev-help@ant.apache.org