Pragma Istruzioni

Panoramica

Un'istruzione pragma viene utilizzata per influenzare le proprietà di una o più variabili relative al processo di compilazione o precompilazione (preprocessore). Pertanto, un pragma influenza la generazione del codice.

NOTA: Considerare che le istruzioni pragmas disponibili non sono implementazioni 1:1 delle direttive di preelaborazione C. Vengono gestite come dichiarazioni normali e quindi possono essere usate soltanto nelle posizioni delle dichiarazioni. Non devono essere utilizzate in un'espressione e non nella parte di dichiarazione degli editor.

Un'istruzione pragma può determinare se una variabile verrà inizializzata, monitorata, aggiunta in un elenco parametri, aggiunta nella lista dei simboli o resa invisibile nel Gestore librerie. Può forzare le emissioni dei messaggi durante il processo di compilazione. È possibile utilizzare istruzioni pragmas condizionali per definire il modo in cui la variabile deve essere gestita in funzione di determinate condizioni Queste istruzioni pragmas possono anche essere immesse come definizioni nelle proprietà di compilazione di un particolare oggetto.

È possibile utilizzare un'istruzione pragma in una riga separata oppure con testo aggiuntivo in una riga dell'editor di implementazione o di dichiarazione. Nell'editor FBD/LD/IL, eseguire il comando Inserire un'etichetta e sostituire il testo predefinito Label: nel campo di testo visualizzato con l'istruzione pragma. Se si vuole impostare una label e un'istruzione pragma, inserire prima pragma, quindi l'etichetta.

L'istruzione pragma è racchiusa tra parentesi graffe.

Sintassi

{ <instruction text> }

La parentesi aperta può trovarsi immediatamente dopo un nome di variabile. Le parentesi aperta e chiusa devono trovarsi sulla stessa riga.

Posizioni corrette per un pragma condizionale

{IF defined(abc)}
IF x =abc THEN
  {IF defined(cde)}
    y := 12;
  {ELSE}
    y :=13;
  {END_IF}
END_IF
{ELSE}
IF x = 12 THEN
  {IF defined(cde)}
    y := 12;
  {ELSE}
    y :=13;
  {END_IF}
END_IF

Posizioni non corrette per un pragma condizionale

NOTA: Non utilizzare pragmi condizionali nelle posizioni indicate in questo esempio di “cattiva prassi”.

Ulteriori informazioni

In funzione del tipo e del contenuto di un pragma, pragma opera sull'istruzione successiva, rispettivamente su tutte le istruzioni successive, fino a quando non viene soddisfatta una delle seguenti condizioni:

  • Finisce con un'istruzione pragma appropriata.

  • La stessa istruzione pragma viene eseguita con parametri diversi.

  • Viene raggiunta la fine del codice.

Il termine codice, in questo contesto, si riferisce alla parte della dichiarazione, alla parte dell'implementazione, all'elenco di variabili globali o alla dichiarazione del tipo.

NOTA: Per le istruzioni Pragma si fa distinzione tra lettere maiuscole e lettere minuscole.

Se il compilatore non è in grado di interpretare in modo significativo il testo dell'istruzione, l'intera istruzione pragma viene trattata come un commento e viene saltata.

Vedere i seguenti tipi pragma: