When a word is broken across a bar, whether there is a hyphen is not consistent. I am not sure what the right behavior should be, though.
\gresetinitiallines{0}
\gabcsnippet{a(gg)(:)a(g) (::) a(g)(:)a(g) (::) abc(g)(:)a(g) (::) abcd(g)(:)a(g)}
\gabcsnippet{a(gg)(`)a(g) (::) a(g)(`)a(g) (::) abc(g)(`)a(g) (::) abcd(g)(`)a(g)}
\gabcsnippet{a(gg)*(:)a(g) (::) a(g)*(:)a(g) (::) abc(g)*(:)a(g) (::) abcd(g)*(:)a(g)}
Under the old bar spacing algorithm, it's slightly different:
\gresetinitiallines{0}
\gresetbarspacing{old}
\gabcsnippet{a(gg)(:)a(g) (::) a(g)(:)a(g) (::) abc(g)(:)a(g) (::) abcd(g)(:)a(g)}
\gabcsnippet{a(gg)(`)a(g) (::) a(g)(`)a(g) (::) abc(g)(`)a(g) (::) abcd(g)(`)a(g)}
\gabcsnippet{a(gg)*(:)a(g) (::) a(g)*(:)a(g) (::) abc(g)*(:)a(g) (::) abcd(g)*(:)a(g)}

When a word is broken across a bar, whether there is a hyphen is not consistent. I am not sure what the right behavior should be, though.
Under the old bar spacing algorithm, it's slightly different: