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 © 1998.</I></P>
</BODY>
</HTML>