alloc_text
Designa la sección de código donde residirán las definiciones de función especificadas. La directiva pragma debe aparecer entre un declarador de función y la definición de función para las funciones designadas.
#pragma alloc_text( "textsection", function1, ... )
Comentarios
La directiva pragma alloc_text no controla funciones miembro de C++ o funciones sobrecargadas. Solo es aplicable a las funciones declaradas con vinculación de C (es decir, funciones declaradas con la especificación de vinculación extern de "C"). Si intenta utilizar esta directiva pragma en una función con vinculación de C++, se genera un error del compilador.
Puesto que el direccionamiento de la función mediante __based no se admite, especificar ubicaciones de sección requiere el uso de la directiva pragma alloc_text. El nombre especificado por textsection se debe incluir entre comillas dobles.
La directiva pragma alloc_text debe aparecer después de las declaraciones de las funciones especificadas y antes de las definiciones de estas funciones.
Las funciones a las que se hace referencia en una directiva pragma alloc_text se deben definir en el mismo módulo que la directiva pragma. Si no es así y después se compila una función sin definir en otra sección de texto, el error se puede detectar o no. Aunque lo normal es que el programa se ejecute correctamente, la función no se asignará en las secciones previstas.
Estas son otras de las limitaciones de alloc_text:
No se puede utilizar dentro de una función.
Debe utilizarse una vez declarada la función, pero antes de que esta se haya definido.