Hi folks,

I spent some time this morning looking at
    https://bugs.launchpad.net/juju-core/+bug/1362636

A critical regression that was breaking CI on power.

There is a bug in gccgo where we hit an internal compiler error when
comparing an interface to a concrete type that implements the interface
(as opposed to a pointer to the concrete type implementing the interface).

This impacts some of the names.Tag rework that is going on.

If you try to compare:
   var tag names.Tag = names.NewMachineTag("1")

   if names.NewUnitTag("1") == tag {
      // BOOM!!!
   }

This is entirely valid Go, and works fine with gc, but gccgo barfs horribly.

My fix is here: https://github.com/juju/juju/pull/633

This is just a warning.

Remember folks that we need to support gccgo still (for at least another
year until we have power and arm64 using gc).

You can test locally by doing this:
  go test -compiler gccgo

If you install the gccgo packages, which I don't remember, but hopefully
someone will follow up with.

Cheers,
Tim

-- 
Juju-dev mailing list
Juju-dev@lists.ubuntu.com
Modify settings or unsubscribe at: 
https://lists.ubuntu.com/mailman/listinfo/juju-dev

Reply via email to