Compartilhar via


alloc_text

Nomeia a seção de código onde as definições de função especificadas devem residir. O pragma deve estar entre um declarador de função e a definição de função para as funções nomeadas.

#pragma alloc_text( "textsection", function1, ... )

Comentários

O pragma alloc_text não trata funções de membro C++ ou funções sobrecarregadas. É aplicável somente a funções declaradas com vinculação C – ou seja, funções declaradas com a especificação de vínculo extern "C". Se você tentar usar esse pragma em uma função com vinculação C++, um erro do compilador será gerado.

Como o tratamento de função usando __based não tem suporte, especificar locais de seção requer o uso do pragma alloc_text. O nome especificado por textsection deve ser colocado entre aspas duplas.

O pragma alloc_text deve aparecer depois que as declarações de qualquer uma das funções especificadas e antes das definições dessas funções.

As funções referenciadas em um pragma alloc_text devem ser definidas no mesmo módulo do pragma. Se isso não for feito e uma função indefinida for compilada posteriormente em uma seção de texto diferente, o erro poderá ou não ser detectado. Embora o programa seja executado corretamente no geral, a função não será alocada nas seções desejadas.

Outras limitações de alloc_text são:

  • Não pode ser usado dentro de uma função.

  • Deve ser usado depois que a função é declarada, mas antes de a função ser definida.

Consulte também

Referência

Diretivas Pragma e a palavra-chave __Pragma