cmd/gc: make missing package error fatal

No longer continue assuming package main.

Fixes #4776.

R=golang-dev, r
CC=golang-dev
https://golang.org/cl/12677043
This commit is contained in:
Rick Arnold 2013-08-09 16:05:40 +10:00 committed by Rob Pike
parent f2bc275525
commit 66e8471391
3 changed files with 12 additions and 4 deletions

View File

@ -136,8 +136,7 @@ package:
{
prevlineno = lineno;
yyerror("package statement must be first");
flusherrors();
mkpackage("main");
errorexit();
}
| LPACKAGE sym ';'
{

View File

@ -2428,8 +2428,7 @@ yyreduce:
{
prevlineno = lineno;
yyerror("package statement must be first");
flusherrors();
mkpackage("main");
errorexit();
}
break;

View File

@ -0,0 +1,10 @@
// errorcheck
// Copyright 2013 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.
// Issue 4776: missing package declaration error should be fatal.
type MyInt int32 // ERROR "package statement must be first"