116 lines
3.0 KiB
Plaintext
116 lines
3.0 KiB
Plaintext
/*
|
||
* $Id$
|
||
*/
|
||
|
||
/*
|
||
* Las siguientes partes son derechos adquiridos de sus autores individuales.
|
||
* www - http://www.harbour-project.org
|
||
*
|
||
* Copyright 2001 Jose Lalin <dezac@corevia.com>
|
||
* Documentaci¢n en Ingl‚s
|
||
*
|
||
* Copyright 2001 Alejandro de G rate <alex_degarate@hotmail.com>
|
||
* Traducci¢n al Espa¤ol de pragma.txt
|
||
*
|
||
* Vea doc/license.txt por los t‚rminos de la licencia.
|
||
*
|
||
*/
|
||
|
||
|
||
DIRECTIVA #pragma
|
||
=================
|
||
|
||
|
||
INTRODUCCION
|
||
============
|
||
Este archivo explica qu‚ es y c¢mo usar la directiva #pragma con Harbour.
|
||
Primariamente esto le da control sobre los switches de la l¡nea de
|
||
comandos del compilador, desde adentro de su c¢digo fuente.
|
||
|
||
|
||
QUE ES ?
|
||
========
|
||
#pragma es una directiva usada dentro del c¢digo fuente en muchos
|
||
compiladores para cambiar el comportamiento del compilador en tiempo
|
||
de compilaci¢n.
|
||
|
||
|
||
USO
|
||
===
|
||
|
||
La directiva #pragma puede ser usada en dos formas:
|
||
1- el modo switch
|
||
2- modo comando
|
||
|
||
La sintaxis es: #pragma <Expression>[=On/Off] ¢
|
||
#pragma -CompilerFlag[+|-]
|
||
|
||
Ud. puede usar ambos modos mezclados en el mismo m¢dulo y en may£sculas ¢
|
||
min£sculas sin preocuparse.
|
||
|
||
Para habilitar ¢ deshabilitar un comando ¢ un switch Ud simplemente haga:
|
||
|
||
* Modo Comando Modo Switch
|
||
--------------------------------------------------------------
|
||
* #pragma <CommandName>=On/Off #pragma /<SwitchName>+/-
|
||
|
||
Ejemplo:
|
||
#pragma AddDebugInfo=Off /* Suprime informaci¢n de depuraci¢n */
|
||
#pragma /B+ /* Agrega informaci¢n de depuraci¢n
|
||
desde aqu¡ */
|
||
|
||
|
||
IMPLEMENTACION
|
||
==============
|
||
|
||
Esta es la lista de los comandos soportados y switches:
|
||
|
||
* Comando Switch
|
||
-----------------------------------------------
|
||
* AUTOMEMVARS =<On/Off> /A<+/->
|
||
* DEBUGINFO =<On/Off> /B<+/->
|
||
* ENABLEWARNINGS =<On/Off> /W<+/->
|
||
* EXITSEVERITY =<nNivel> /E<nNivel>
|
||
* FORCEMEMVARS =<On/Off> /V<+/->
|
||
* LINEINFO =<On/Off> /L<+/->
|
||
* NOSTARTPROC =<On/Off> /N<+/->
|
||
* PREPROCESSING =<On/Off> /P<+/->
|
||
* WARNINGLEVEL =<nNivel> /W<nNivel>
|
||
* SHORTCUTTING =<On/Off> /Z<+/->
|
||
|
||
Los switches tienen el mismo comportamiento que los del compilador
|
||
y los comandos son sin¢nimos de los switches.
|
||
|
||
* TRACEPRAGMAS (Rastreo de pragmas)
|
||
Este comando muestra la actividad de los pragmas en tiempo de
|
||
compilaci¢n cuando est n habilitados.
|
||
|
||
NOTA: Ud. puede usar el modo de comando abreviado tipeando solamente
|
||
los ocho primeros caracteres.
|
||
|
||
|
||
NOTAS:
|
||
======
|
||
Esta directiva no es soportada en la versi¢n aislada del preprocesador
|
||
de Harbour.
|
||
|
||
|
||
EJEMPLOS
|
||
========
|
||
#pragma NoStartProc=Off
|
||
/* #pragma /N- */
|
||
|
||
function Test()
|
||
return nil
|
||
|
||
Esto es lo mismo que llamar a Harbour con el switch -n en la l¡nea de
|
||
comandos pero con el gran beneficio que si Ud. olvida pasar el switch,
|
||
este podr ser usado de todas maneras, porque est incluido dentro del
|
||
c¢digo fuente.
|
||
|
||
|
||
|
||
|
||
|
||
|