The only bugs I am aware of when using reflection on ppc64 & ppc64le in gcc 4.9 are in the gccgo testcase recover.go and what is needed to build Docker. When I run the gccgo testsuite and see a failing testcase with a panic message saying that a function is not implemented it makes me think some major pieces are missing so that is why I've used that phrase. Also I noticed that the libgo/go/reflect/all_test.go testcase is not running some tests when GOARCH is ppc64 or ppc64le, and if those are enabled they fail. So some might call those "bugs" or "unimplemented features" or "missing support". To me, a message saying that something is not implemented is considered missing support even though it might be minor.

The information I received from those who had attempted to build Docker on ppc64le in gcc 4.9 said that it needed reflection and it wasn't there and this patch was used to make it work.

I hope that answers your question? I have not done a thorough testing/investigation of reflection in gccgo 4.9 on Power and my statement refers only on the above information.

On 01/08/2015 08:53 AM, Ian Lance Taylor wrote:
On Thu, Jan 8, 2015 at 5:44 AM, Lynn A. Boger
<labo...@linux.vnet.ibm.com> wrote:I
Also as was noted below, some level of reflection support is needed to build
Docker.
Sorry to be so pedantic, but I'm just trying to clarify that you keep
saying "reflection support," but reflection support is there.  What is
missing is a miniscule rarely used part of the reflect package, namely
support for reflect.MakeFunc, and, it's true, calling reflect.ValueOf,
then Method or MethodByName, then Interface.

Ian




Reply via email to