From 948bb9150e962ee77475d2abc6585ecc7ac7f755 Mon Sep 17 00:00:00 2001 From: Russ Cox Date: Wed, 27 Aug 2014 23:41:27 -0400 Subject: [PATCH] cmd/cc: translate C Eface type as Go interface{} This will allow structs containing Efaces in C to be manipulated as structs containing real interfaces in Go. The eface struct is still defined for use by Go code. LGTM=iant R=golang-codereviews, iant CC=dvyukov, golang-codereviews, khr, r https://golang.org/cl/133980044 --- src/cmd/cc/godefs.c | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/src/cmd/cc/godefs.c b/src/cmd/cc/godefs.c index edb8a5e287..20915ca8ca 100644 --- a/src/cmd/cc/godefs.c +++ b/src/cmd/cc/godefs.c @@ -218,11 +218,13 @@ printtypename(Type *t) n = s->name; else if(t->tag) n = t->tag->name; - if(strcmp(n, "String") == 0){ + if(strcmp(n, "String") == 0) Bprint(&outbuf, "string"); - } else if(strcmp(n, "Slice") == 0){ + else if(strcmp(n, "Slice") == 0) Bprint(&outbuf, "[]byte"); - } else + else if(strcmp(n, "Eface") == 0) + Bprint(&outbuf, "interface{}"); + else Bprint(&outbuf, "%U", n); break; case TFUNC: -- 2.48.1