Commit 59167e5b authored by Russ Cox's avatar Russ Cox

diagnose export of incomplete type

R=ken
OCL=17253
CL=17253
parent 801f542b
...@@ -125,6 +125,13 @@ dumpexporttype(Sym *s) ...@@ -125,6 +125,13 @@ dumpexporttype(Sym *s)
Bprint(bout, "\t"); Bprint(bout, "\t");
if(s->export != 0) if(s->export != 0)
Bprint(bout, "export "); Bprint(bout, "export ");
switch (s->otype->etype) {
case TFORW:
case TFORWSTRUCT:
case TFORWINTER:
yyerror("export of incomplete type %T", s->otype);
return;
}
Bprint(bout, "type %lS %l#T\n", s, s->otype); Bprint(bout, "type %lS %l#T\n", s, s->otype);
} }
......
// Copyright 2009 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.
// errchk $G $D/$F.go
package main
export type A struct // ERROR "incomplete"
export type B interface // ERROR "incomplete"
export type C struct
export type D interface
type C struct { }
type D interface { }
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment