[augeas-devel] [Augeas] #253: Match oddities in recursive lens

Augeas trac at fedorahosted.org
Tue Feb 7 10:54:44 UTC 2012


#253: Match oddities in recursive lens
----------------------+--------------------
  Reporter:  raphink  |      Owner:  lutter
      Type:  defect   |     Status:  new
  Priority:  major    |  Milestone:  next
 Component:  Augeas   |    Version:  devel
Resolution:           |   Keywords:
Blocked By:           |   Blocking:
----------------------+--------------------

Comment (by raphink):

 Here is a more simple way to reproduce this behavior:

 {{{
 module Bug253 =

 let entry = [ key "foo" ]

 let rec record =
  [ key "record" . Util.del_str " { "
     . (record | entry)
     . Util.del_str " }" ]

 let top_record = [ key "top_record". Sep.space_equal . record ]

 let lns = Util.empty* . top_record . Util.empty*
 }}}

 {{{
 $ augparse -I . bug253.aug
 Syntax error in lens definition
 bug253.aug:12.0-.48:Failed to compile lns
 bug253.aug:12.10-.48:exception: ambiguous tree concatenation
       First regexp: /{ }*{ /top_record/ }/
       Second regexp: /{ }*/
       ' {  }' can be split into
       '|=| {  }'

      and
       ' {  }|=|'

     First lens: bug253.aug:12.10-.34:
     Second lens: bug253.aug:12.37-.48:
 }}}

-- 
Ticket URL: <https://fedorahosted.org/augeas/ticket/253#comment:1>
Augeas <http://augeas.net/>
a configuration API




More information about the augeas-devel mailing list