Using client_golang:
myPusher = myPusher.Grouping("firstlabel", "abc")
myPusher = myPusher.Grouping("secondlabel", "")
myPusher = myPusher.Grouping("thirdlabel", "def")
results in generating PUT HTTP request
http://mypushgateway:9091/metrics/job/myjob/firstlabel/abc/secondlabel//thirdlabel/def
and when sending it to push gateway, it responds 405 Method Not Allowed.
I'm not sure whether that's a push gateway caveat, URL encoding problem or client_golang issue, but empty label values are perfectly legal in Prometheus and should work fine.
Using pushgateway 1.2.0 and client_golang 1.5.1.