]> Cypherpunks repositories - gostls13.git/commitdiff
gotype: provide -comments flag
authorRobert Griesemer <gri@golang.org>
Tue, 28 Feb 2012 05:35:26 +0000 (21:35 -0800)
committerRobert Griesemer <gri@golang.org>
Tue, 28 Feb 2012 05:35:26 +0000 (21:35 -0800)
When debugging ASTs, it's useful to also
see the comments on occasion. Usage:

gotype -ast -comments file.go

R=golang-dev, r
CC=golang-dev
https://golang.org/cl/5703043

src/pkg/exp/gotype/doc.go
src/pkg/exp/gotype/gotype.go

index 1aa0faa751a17daa1073444e7d5491f9f08a0eb3..1168086771fb1e7d583ebbfe2a925527781cbeed 100644 (file)
@@ -34,6 +34,8 @@ The flags are:
                Verbose mode.
 
 Debugging flags:
+       -comments
+               Parse comments (ignored if -ast not set).
        -ast
                Print AST (disables concurrent parsing).
        -trace
index a2a9361866da418b44b8c318d93ee21b3efc4c94..30eaf22fca6b270a33a6be37d6b6ec17f1174c23 100644 (file)
@@ -27,8 +27,9 @@ var (
        allErrors = flag.Bool("e", false, "print all (including spurious) errors")
 
        // debugging support
-       printTrace = flag.Bool("trace", false, "print parse trace")
-       printAST   = flag.Bool("ast", false, "print AST")
+       parseComments = flag.Bool("comments", false, "parse comments (ignored if -ast not set)")
+       printTrace    = flag.Bool("trace", false, "print parse trace")
+       printAST      = flag.Bool("ast", false, "print AST")
 )
 
 var exitCode = 0
@@ -73,6 +74,9 @@ func parse(fset *token.FileSet, filename string, src []byte) *ast.File {
        if *allErrors {
                mode |= parser.SpuriousErrors
        }
+       if *parseComments && *printAST {
+               mode |= parser.ParseComments
+       }
        if *printTrace {
                mode |= parser.Trace
        }