mirror of
https://github.com/golang/go
synced 2024-11-25 01:27:56 -07:00
7d3a40978a
Merge push_parser and pop_parser into a single parse_import function and inline unimportfile. Shake out function boundaries a little bit so that the symmetry is readily visible. Move the import_package call into parse_import (and inline import_there into import_package). This means importfile no longer needs to provide fake import data to be needlessly lexed/parsed every time it's called. Also, instead of indicating import success/failure by whether the next token is "package", import_spec can just check whether importpkg is non-nil. Tangentially, this somehow alters the diagnostics produced for test/fixedbugs/issue11610.go. However, the new diagnostics are more consistent with those produced when the empty import statement is absent, which seems more desirable than maintaining the previous errors. Change-Id: I5cd1c22aa14da8a743ef569ff084711d137279d5 Reviewed-on: https://go-review.googlesource.com/19650 Reviewed-by: Robert Griesemer <gri@golang.org>
18 lines
431 B
Go
18 lines
431 B
Go
// errorcheck
|
|
|
|
// Copyright 2015 The Go Authors. All rights reserved.
|
|
// Use of this source code is governed by a BSD-style
|
|
// license that can be found in the LICENSE file.
|
|
|
|
// Test an internal compiler error on ? symbol in declaration
|
|
// following an empty import.
|
|
|
|
package a
|
|
import"" // ERROR "import path is empty"
|
|
var? // ERROR "unexpected \?"
|
|
|
|
var x int // ERROR "unexpected var" "cannot declare name"
|
|
|
|
func main() {
|
|
}
|