package main

import (
	"flag"
	"go/ast"
	"go/parser"
	"go/token"
	"log"
)

func main() {
	var filename string
	flag.StringVar(&filename, "f", "", "input file")
	flag.Parse()

	fset := token.NewFileSet()
	f, err := parser.ParseFile(fset, filename, nil, parser.ParseComments)
	if err != nil {
		log.Fatalf("Failed to parse file %s: %s", filename, err)
	}
	ast.Print(fset, f)
}