proceso ejecutar con compiler compilar compilador compilacion como c gcc compilation c-preprocessor

ejecutar - gcc-v compilador



¿Qué significan los números en los archivos.i preprocesados ​​al compilar C con gcc? (1)

Los números que siguen al nombre del archivo son indicadores:

1: Esto indica el inicio de un nuevo archivo.

2: Esto indica regresar a un archivo (después de haber incluido otro archivo).

3: Esto indica que el siguiente texto proviene de un archivo de encabezado del sistema, por lo que ciertas advertencias deben ser suprimidas.

4: Esto indica que el siguiente texto se debe tratar como si estuviera envuelto en un bloque extern "C" implícito.

Fuente: https://gcc.gnu.org/onlinedocs/cpp/Preprocessor-Output.html

Estoy tratando de entender el proceso de compilación. Podemos ver el archivo intermedio del preprocesador usando:

gcc -E hello.c -o hello.i

o

cpp hello.c > hello.i

Más o menos sé lo que hace el preprocesador, pero tengo dificultades para entender los números en algunas de las líneas. Por ejemplo:

# 1 "/usr/include/stdc-predef.h" 1 3 4 # 1 "<command-line>" 2 # 1 "hello.c" # 1 "/usr/include/stdio.h" 1 3 4 # 27 "/usr/include/stdio.h" 3 4 # 1 "/usr/include/features.h" 1 3 4 # 374 "/usr/include/features.h" 3 4

Los números pueden ayudar al depurador a mostrar los números de línea. Entonces mi conjetura para la primera columna es el número de línea para el archivo de la columna # 2. Pero, ¿qué hacen los siguientes números?