when using an input string containing a unicode character, tab completion and the complete command complete to non-existent symbols echo "void foo\u0f00(){} void main(){}" | gcc -g --std c99 -fextended-identifiers -x c -; gdb -quiet ./a.out -batch -ex 'complete b foo' -ex 'complete b fooༀ' The first complete works fine (because the input contains no extended-identifiers) b fooༀ the 2nd completion starts appending all symbols to the input string b fooༀ_DYNAMIC b fooༀ_GLOBAL_OFFSET_TABLE_ <snip> b fooༀfooༀ
The same thing happens with filenames when using the break completer,to complete filenames, but works OK for the 'file' completer. echo "void main(){}" >fooༀ.c; gcc -g --std c99 -fextended-identifiers -x c fooༀ.c; gdb -quiet ./a.out -batch -ex 'complete file fooༀ' -ex 'complete break fooༀ' file fooༀ.c break fooༀ.c break fooༀ_DYNAMIC break fooༀ_GLOBAL_OFFSET_TABLE_ <snip>
This all seems to work for me in current master. Can you confirm?
Can confirm, didn't figure out what fixed it though, anyhow marking resolved. (sorry, should have tested earlier when referencing this bug)