Hoy me puse desprevenido por gdb:
Program exited with code 0146.
gdbimprime el código de retorno en octal ; buscando por qué encontré:
http://comments.gmane.org/gmane.comp.gdb.devel/30363
Pero esa no es una respuesta particularmente satisfactoria. Algunas búsquedas rápidas en Google no revelaron la historia, por lo que esperaba que alguien en SO supiera la historia de fondo.
Una pregunta algo relacionada, ¿cómo se vería el código de retorno en octal? ¿Quizás las máquinas más antiguas siempre imprimen el código de retorno?
$ printf %o\\n $?
Es bastante incómodo :)
man asciino sería útil para convertir octal a decimal. bcSería una mejor opción.
$?es el valor del shell para el código de retorno y es un dígito decimal (¿o gdb también admite su cmd de ejemplo?). No sé por qué gdb lo informa en octal. Mi solución es salir del olman asciipara ver qué significan los valores octales. Pregunta interesante, ya que también te encuentras con valores octales de otros programas. Tal vez se discuta en Kernighan y Pike 'Unix Programming Envioronment'. Buena suerte.