In gdb, when debugging inside a function, we can use “finish” command to run to the end of a function. My question is: how does gdb know the ending position of a function, especially when there’s no debugging symbol to match source code “{}”? I guess gdb looks for either “l…