1# Copyright 2022-2023 Free Software Foundation, Inc. 2# 3# This program is free software; you can redistribute it and/or modify 4# it under the terms of the GNU General Public License as published by 5# the Free Software Foundation; either version 3 of the License, or 6# (at your option) any later version. 7# 8# This program is distributed in the hope that it will be useful, 9# but WITHOUT ANY WARRANTY; without even the implied warranty of 10# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 11# GNU General Public License for more details. 12# 13# You should have received a copy of the GNU General Public License 14# along with this program. If not, see <http://www.gnu.org/licenses/>. 15 16# Test UTF-8 identifiers. 17 18load_lib "ada.exp" 19 20if { [skip_ada_tests] } { return -1 } 21 22# Enable basic use of UTF-8. LC_ALL gets reset for each testfile. 23setenv LC_ALL C.UTF-8 24 25standard_ada_testfile prog 26 27set flags [list debug additional_flags=-gnatW8] 28if {[gdb_compile_ada "${srcfile}" "${binfile}" executable $flags] != ""} { 29 return -1 30} 31 32# Restart without an executable so that we can set the encoding early. 33clean_restart 34 35gdb_test_no_output "set ada source-charset UTF-8" 36 37gdb_load ${binfile} 38 39set bp_location [gdb_get_line_number "BREAK" ${testdir}/prog.adb] 40runto "prog.adb:$bp_location" 41 42gdb_test "print VAR_Ü" " = 23" 43gdb_test "print var_ü" " = 23" 44gdb_test "print VAR_Ƹ" " = 24" 45gdb_test "print var_ƹ" " = 24" 46gdb_test "print VAR_" " = 25" 47gdb_test "print var_" " = 25" 48gdb_test "print VAR_Ż" " = 26" 49gdb_test "print var_ż" " = 26" 50 51gdb_breakpoint "FUNC_Ü" message 52gdb_breakpoint "func_ü" message 53gdb_breakpoint "FUNC_Ƹ" message 54gdb_breakpoint "func_ƹ" message 55gdb_breakpoint "FUNC_Ż" message 56gdb_breakpoint "func_ż" message 57gdb_breakpoint "FUNC_" message 58