Subversion Repositories tendra.SVN

Rev

Blame | Last modification | View Log | RSS feed

<!-- Crown Copyright (c) 1998 -->
<HTML>
<HEAD>
<TITLE>C Checker Reference Manual: Compilation Modes</TITLE>
</HEAD>
<BODY TEXT="#000000" BGCOLOR="#FFFFFF" LINK="#0000FF" VLINK="#400080" ALINK="#FF0000">
<A NAME=S123>
<H1>C Checker Reference Manual</H1>
<H3>January 1998</H3>
<A HREF="tdfc16.html"><IMG SRC="../images/next.gif" ALT="next section"></A>
<A HREF="tdfc14.html"><IMG SRC="../images/prev.gif" ALT="previous section"></A>
<A HREF="tdfc1.html"><IMG SRC="../images/top.gif" ALT="current document"></A>
<A HREF="../index.html"><IMG SRC="../images/home.gif" ALT="TenDRA home page">
</A>
<IMG SRC="../images/no_index.gif" ALT="document index"><P>
<HR>
<DL>
<DT><A HREF="#S124"><B>A.1 </B> - Base modes</A><DD>
<DT><A HREF="#S125"><B>A.2 </B> - nepc and not_ansi modes</A><DD>
</DL>

<HR>
<H1>A  Compilation Modes</H1>
<A NAME=S124>
<HR><H2>A.1  Base modes</H2>
The Xs, Xp, Xw, Xc, Xa and Xt modes are mutually incompatible and
should not be used together. All other built-in mode combinations
are allowed and, of course, any built-in mode can be combined with
user-defined modes as described in section 2.2.<P>
Checks marked with E are enabled to produce an error and checks marked
with W are enabled to produce a warning. A blank entry implies that
the check is disabled.<P>
<BR><IMG SRC="table5.ps"><BR>
<P>
<A NAME=S125>
<HR><H2>A.2  nepc and not_ansi modes</H2>
These modes modify the base environment.<P>
The <CODE>nepc</CODE> environment switches off most of the extra portability
checking. It is specified by passing the -nepc option to tcc.<P>
Printf String Checking OFF<P>
Pragma Profile:<P>
<PRE>
        #pragma TenDRA conversion analysis off
        #pragma TenDRA weak prototype analysis off
        #pragma TenDRA compatible type : char * == void * : allow
        #pragma TenDRA function pointer as pointer allow
        #pragma TenDRA character escape overflow allow
        #pragma TenDRA no nline after file end allow
        #pragma TenDRA bitfield overflow allow
</PRE>
<P>
The <CODE>not_ansi</CODE> environment provides support for a range
of non-ansi dialect features. It is specified by passing the -not_ansi
option to tcc.<P>
Pragma Profile:<P>
<PRE>
        #pragma TenDRA linkage resolution : (internal) on
        #pragma TenDRA unify external linkage on
        #pragma TenDRA directive assert allow
        #pragma TenDRA directive file allow
        #pragma TenDRA directive ident allow
        #pragma TenDRA directive unassert allow
        #pragma TenDRA directive weak allow
        #pragma TenDRA compatible type : char * == void * : allow
        #pragma TenDRA conditional lvalue allow
        #pragma TenDRA extra ; allow
        #pragma TenDRA extra bitfield int type allow
        #pragma TenDRA extra type definition allow
        #pragma TenDRA ignore struct/union/enum tag on
        #pragma TenDRA implicit int type for external declaration allow
        #pragma TenDRA implicit int type for function return allow
        #pragma TenDRA no external declaration allow
        #pragma TenDRA text after directive allow
        #pragma TenDRA unknown escape allow
        #pragma TenDRA unknown pragma allow
        #pragma TenDRA weak macro equality allow
        #pragma TenDRA extra ... allow
        #pragma TenDRA extra , allow
        #pragma TenDRA incomplete type as object type allow
        #pragma TenDRA dollar as ident allow
        #pragma TenDRA variable initialization allow
        #pragma TenDRA extra macro definition allow
        #pragma TenDRA incompatible type qualifier allow
        #pragma TenDRA no directive/nline after ident allow
        #pragma TenDRA unknown directive allow
        #pragma TenDRA no ident after # allow
        #pragma TenDRA block function static allow
        #pragma TenDRA unknown struct/union allow
</PRE>
<P>
<!-- FM pgf ignored -->
<HR>
<P><I>Part of the <A HREF="../index.html">TenDRA Web</A>.<BR>Crown
Copyright &copy; 1998.</I></P>
</BODY>
</HTML>