summaryrefslogtreecommitdiff
path: root/src/cmd/cgo/main.go
diff options
context:
space:
mode:
authorDevon H. O'Dell <devon.odell@gmail.com>2010-05-21 17:31:18 -0700
committerDevon H. O'Dell <devon.odell@gmail.com>2010-05-21 17:31:18 -0700
commitee4237d9e3fb90269242de043cf88ce325a67664 (patch)
tree2b69ef4470c0606d6a7134b89e98c3ce64cd214b /src/cmd/cgo/main.go
parent68f0e281a613e4025f77c7371fec4b41fef644a9 (diff)
downloadgo-ee4237d9e3fb90269242de043cf88ce325a67664.tar.gz
cgo: better error for no C symbols
R=rsc, iant CC=golang-dev, graeme.perrow http://codereview.appspot.com/1193046 Committer: Russ Cox <rsc@golang.org>
Diffstat (limited to 'src/cmd/cgo/main.go')
-rw-r--r--src/cmd/cgo/main.go5
1 files changed, 5 insertions, 0 deletions
diff --git a/src/cmd/cgo/main.go b/src/cmd/cgo/main.go
index 070146c9a..ac82ae918 100644
--- a/src/cmd/cgo/main.go
+++ b/src/cmd/cgo/main.go
@@ -83,6 +83,11 @@ func main() {
// Reset p.Preamble so that we don't end up with conflicting headers / defines
p.Preamble = builtinProlog
openProg(input, p)
+
+ if len(p.Vardef) == 0 && len(p.Funcdef) == 0 && len(p.Enumdef) == 0 && len(p.Constdef) == 0 {
+ fatal("no C symbols were used in cgo file " + input)
+ }
+
for _, cref := range p.Crefs {
// Convert C.ulong to C.unsigned long, etc.
if expand, ok := expandName[cref.Name]; ok {