It's not obvious to me what might be happening in the first example without seeing more details of the protocols and types involved, though someone else might have some ideas just from looking at your snippets. The best thing to do is to use feedback assistant to report the problem and attach a project or package that illustrates the problem ("this package builds correctly with Xcode X.Y, but not with Z.W").
Your second example looks likely to be a simple typo (as Hyper.Coordinate instead of as [Hyper.Coordinate]).