Thanks, just merged.

On 13-05-07 01:46 PM, Anton Ageev wrote:
On Mon, Apr 29, 2013 at 1:32 AM, Dan Kortschak
<dan.kortsc...@adelaide.edu.au <mailto:dan.kortsc...@adelaide.edu.au>>
wrote:

    This would a useful addition to the process though, so it is
    probably worth filing an issue with the Go project.


I realized it isn't a bug. Go compiler takes in consideration a distance
between '//line' directive and a line with error.
I added experimental support for '//line' directive at
https://github.com/antage/ragel-go/tree/golang-6
I need a feedback about how to accurate go compiler report error line
location in *.rl file.

    On 28/04/2013, at 5:30 PM, "Anton Ageev" <ant...@gmail.com
    <mailto:ant...@gmail.com>> wrote:

     > It's interesting undocumented feature. I played with go examples
    and I got very discouraging behaviour.
     >
     > Example 1.
     >
     > atoi.go:
     > ...
     > //line atoi.rl:34
     >  neg = ttrue // I change 'true' to 'ttrue' to make error message
     >     case 1:
     > //line atoi.rl:35
     >
     > val = val * 10 + (int(data[p]) - '0')
     > ...
     >
     > I run `go run atoi.go` and I got following message:
     >
     > # command-line-arguments
     >
    atoi.rl:34[/home/antage/workspace/ragel-go/examples/go/atoi.go:163]:
    undefined: ttrue
     >
     > It's looking fine.
     >
     > Example 2.
     >
     > atoi.go:
     > ...
     > //line atoi.rl:34
     >
     >  neg = ttrue // I change 'true' to 'ttrue' to make error message
     >     case 1:
     > //line atoi.rl:35
     >
     > val = val * 10 + (int(data[p]) - '0')
     > ...
     >
     > I just add empty line after '//line atoi.rl:34' directive.
     > I got following message:
     >
     > # command-line-arguments
     >
    atoi.rl:35[/home/antage/workspace/ragel-go/examples/go/atoi.go:164]:
    undefined: ttrue
     >
     > It's not fine. Error isn't at atoi.rl:35, it's at atoi.rl:34.
     >
     > Ragel generates a lot of empty lines when embedding an action
    code. So we can't rely on '//line' directive to locate errors in .rl
    files.

    _______________________________________________
    ragel-users mailing list
    ragel-users@complang.org <mailto:ragel-users@complang.org>
    http://www.complang.org/mailman/listinfo/ragel-users




--
WBR, Anton


_______________________________________________
ragel-users mailing list
ragel-users@complang.org
http://www.complang.org/mailman/listinfo/ragel-users


_______________________________________________
ragel-users mailing list
ragel-users@complang.org
http://www.complang.org/mailman/listinfo/ragel-users

Reply via email to