Thanks for the reply!
The GNU project (authors of GPL) do indeed confirm that position:
https://www.gnu.org/licenses/gpl-faq.en.html#NoMilitary
Specifically:
-------------
I'd like to license my code under the GPL, but I'd also like to make it clear that it can't be used for military and/or commercial uses. Can I do this? (#NoMilitary)
No, because those two goals contradict each other. The GNU GPL is designed specifically to prevent the addition of further restrictions. GPLv3 allows a very limited set of them, in section 7, but any other added restriction can be removed by the user.
More generally, a license that limits who can use a program, or for what, is not a free software license.
-----------
So, yep, code that says it is under the gpl can't simultaneously have a restriction of it. It's either gpl or it is not.
I would argue that g4klx's code can be used commercially as it is licenced under the GPL.
In the instance of OpenGD77, if there was code that was not under the GPL (eg another licence but with a non commercial restriction) then it couldn't be legally combined with GPL code. However if the code came from another "GPL but with restrictions" source you could just take it as GPL in my reading because there are conflicting terms and you can take those you like.
David