Rev 2 | Blame | Compare with Previous | Last modification | View Log | RSS feed
<!-- Crown Copyright (c) 1998 -->
<HTML>
<HEAD>
<TITLE>C Checker Reference Manual: Summary of the pragma statements</TITLE>
</HEAD>
<BODY TEXT="#000000" BGCOLOR="#FFFFFF" LINK="#0000FF" VLINK="#400080" ALINK="#FF0000">
<A NAME=S130>
<H1>C Checker Reference Manual</H1>
<H3>January 1998</H3>
<A HREF="tdfc19.html"><IMG SRC="../images/next.gif" ALT="next section"></A>
<A HREF="tdfc17.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>
<H1>D Summary of the pragma statements</H1>
<OL>
<LI><CODE><EM>pragma_syntax:</EM></CODE>
<PRE>
#pragma TenDRA <EM>tendra_pragma</EM>
#pragma token <EM>token_pragma</EM>
#pragma <EM>token_operation</EM>
#pragma <EM>integer_pragma</EM>
</PRE>
<LI><CODE><EM>tendra_pragma:</EM></CODE>
<PRE>
begin <A HREF="tdfc5.html#13">==></A>
begin <EM>name</EM> environment <EM>identifier</EM> </A>
declaration block <EM>identifier</EM> begin <A HREF="tdfc21.html#6">==></A>
declaration block end <A HREF="tdfc21.html#6">==></A>
directory <EM>name</EM> use environment <EM>identifier</EM>
use environment <EM>identifier</EM>
end <A HREF="tdfc5.html#13">==></A>
<EM>analysis_spec</EM>
<EM>function_pars</EM> <A HREF="tdfc6.html#32">==></A>
keyword <EM>identifier</EM> for <EM>keyword_spec</EM>
type <EM>identifier</EM> for <EM>type_spec</EM>
<EM>check_pragma</EM>
<EM>variable_pragma</EM>
<EM>dialect_pragma</EM>
</PRE>
<LI><CODE><EM>analysis_spec:</EM></CODE>
<PRE>
complete struct/union analysis <EM>state</EM> <A HREF="tdfc11.html#4">==> </A>
conversion <EM>conv_list</EM> allow <A HREF="tdfc22.html#2">==></A>
conversion analysis <EM>conversion_spec</EM> <A HREF="tdfc6.html#2">==></A>
discard analysis <EM>discard_spec</EM> <A HREF="tdfc8.html#36">==></A>
enum switch analysis <EM>state</EM> <A HREF="tdfc11.html#2">==></A>
fall into case <EM>permit</EM> <A HREF="tdfc8.html#6">==></A>
function pointer as pointer <EM>permit</EM> <A HREF="tdfc6.html#11">==></A>
integer operator analysis <EM>state</EM> <A HREF="tdfc7.html#18">==></A>
integer overflow analysis <EM>state</EM> <A HREF="tdfc7.html#14">==></A>
nested comment analysis <EM>state</EM> <A HREF="tdfc10.html#45">==></A>
operator precedence analysis <EM>state</EM> <A HREF="tdfc8.html#15">==></A>
unreachable code <EM>permit</EM> <A HREF="tdfc8.html#2">==></A>
variable analysis <EM>state</EM> <A HREF="tdfc8.html#2">==></A>
variable hiding analysis <EM>state</EM> <A HREF="tdfc11.html#6">==></A>
weak prototype analysis <EM>state</EM> <A HREF="tdfc6.html#20">==></A>
</PRE>
<LI><CODE><EM>conversion_spec:</EM></CODE>
<PRE>
<EM>empty</EM>
( int-int ) <A HREF="tdfc6.html#5">==></A>
( int-int explicit ) <A HREF="tdfc6.html#5">==></A>
( int-int implicit ) <A HREF="tdfc6.html#5">==></A>
( int-enum implicit) <A HREF="tdfc6.html#5">==></A>
(enum-int implicit) <A HREF="tdfc6.html#5">==></A>
( int-pointer ) <A HREF="tdfc6.html#8">==></A>
( int-pointer explicit ) <A HREF="tdfc6.html#8">==></A>
(int-pointer implicit ) <A HREF="tdfc6.html#8">==></A>
( pointer-int ) <A HREF="tdfc6.html#8">==></A>
( pointer-int explicit ) <A HREF="tdfc6.html#8">==></A>
( pointer-int implicit ) <A HREF="tdfc6.html#8">==></A>
( pointer-pointer ) <A HREF="tdfc6.html#11">==></A>
( pointer-pointer explicit ) <A HREF="tdfc6.html#11">==></A>
( pointer-pointer implicit ) <A HREF="tdfc6.html#11">==></A>
</PRE>
<LI><CODE><EM>discard_spec:</EM></CODE>
<PRE>
<EM>empty</EM>
( function return ) <A HREF="tdfc8.html#38">==></A>
( static ) <A HREF="tdfc8.html#42">==></A>
( value ) <A HREF="tdfc8.html#40">==></A>
<LI><EM>function_pars:</EM>
argument <EM>type_name</EM> as <EM>type_name</EM> <A HREF="tdfc6.html#32">==> </A>
argument <EM>type_name</EM> as ... <A HREF="tdfc6.html#32">==></A>
extra ... <EM>permit</EM> <A HREF="tdfc6.html#32">==></A>
</PRE>
<LI><CODE><EM>keyword_spec:</EM></CODE>
<PRE>
discard value <A HREF="tdfc8.html#44">==></A>
discard variable <A HREF="tdfc8.html#26">==></A>
exhaustive <A HREF="tdfc8.html#32">==></A>
fall into case <A HREF="tdfc8.html#6">==></A>
set <A HREF="tdfc8.html#29">==></A>
set reachable <A HREF="tdfc8.html#2">==></A>
set unreachable <A HREF="tdfc8.html#2">==></A>
type representation <A HREF="tdfc7.html#4">==></A>
weak <A HREF="tdfc6.html#20">==></A>
</PRE>
<LI><CODE><EM>type_spec:</EM></CODE>
<PRE>
bottom <A HREF="tdfc8.html#34">==></A>
... printf <A HREF="tdfc6.html#23">==></A>
... scanf <A HREF="tdfc6.html#23">==></A>
</PRE>
<LI><CODE><EM>check_pragma:</EM></CODE>
<PRE>
implicit function declaration <EM>state</EM> <A HREF="tdfc6.html#30">==></A>
incompatible interface declaration <EM>permit</EM> <A HREF="tdfc21.html#1">==>
</A>
incompatible void return <EM>permit</EM> <A HREF="tdfc6.html#25">==></A>
</PRE>
<LI><CODE><EM>variable_pragma:</EM></CODE>
<PRE>
discard <EM>identifier</EM> <EM>separator</EM> <A HREF="tdfc8.html#26">==> </A>
preserve <EM>identifier_list</EM> <A HREF="tdfc8.html#46">==></A>
set identifier <EM>separator</EM> <A HREF="tdfc8.html#29">==></A>
suspend static <EM>identifier_list</EM> <A HREF="tdfc8.html#46">==></A>
exhaustive <A HREF="tdfc8.html#32">==></A>
</PRE>
<LI><CODE><EM>separator:</EM></CODE>
<PRE>
;
,
</PRE>
<LI><CODE><EM>identifier_list:</EM></CODE>
<PRE>
<EM>identifier</EM>
<EM>identifier</EM> <EM>identifier_list</EM>
</PRE>
<LI><CODE><EM>dialect_pragma:</EM></CODE>
<PRE>
++ <A HREF="tdfc10.html#56">==></A>
assignment as bool <EM>permit</EM> <A HREF="tdfc8.html#11">==></A>
bitfield overflow <EM>permit</EM> <A HREF="tdfc7.html#14">==></A>
block function static <EM>permit</EM> <A HREF="tdfc10.html#15">==></A>
character <EM>set_sign</EM> <A HREF="tdfc10.html#9">==></A>
character escape overflow <EM>permit</EM> <A HREF="tdfc7.html#14">==></A>
compatible type : char * == void * : <EM>permit</EM> <A HREF="tdfc6.html#11">==> </A>
conditional lvalue <EM>dallow</EM> <A HREF="tdfc10.html#29">==></A>
const conditional <EM>permit</EM> <A HREF="tdfc8.html#13">==></A>
dollar as ident <EM>dallow</EM> <A HREF="tdfc10.html#39">==></A>
directive <EM>pp_directive pp_spec</EM> <A HREF="tdfc9.html#1">==></A>
directive as macro argument <EM>permit</EM> <A HREF="tdfc9.html#11">==></A>
external volatile_t <A HREF="tdfc10.html#23">==></A>
extra ; <EM>permit</EM> <A HREF="tdfc10.html#54">==></A>
extra ; after conditional <EM>permit</EM> <A HREF="tdfc8.html#9">==></A>
extra , <EM>permit</EM> <A HREF="tdfc10.html#52">==></A>
extra bitfield int type <EM>permit</EM> <A HREF="tdfc10.html#9">==></A>
extra macro definition <EM>dallow</EM> <A HREF="tdfc9.html#9">==></A>
extra type definition <EM>permit</EM> <A HREF="tdfc10.html#13">==></A>
forward enum declaration <EM>dallow</EM> <A HREF="tdfc10.html#19">==></A>
floating point equality <EM>permit</EM> <A HREF="tdfc11.html#8">==></A>
ident ... <EM>permit</EM> <A HREF="tdfc10.html#27">==></A>
ignore struct/union/enum tag <EM>status</EM> <A HREF="tdfc10.html#31">==> </A>
implicit int type for external declaration <EM>permit</EM> <A HREF="tdfc10.html#7">==></A>
implicit int type for function return <EM>permit</EM> <A HREF="tdfc10.html#7">==> </A>
includes depth <EM>integral_constant</EM> <A HREF="tdfc9.html#17">==></A>
incompatible linkage <EM>permit</EM> <A HREF="tdfc10.html#5">==></A>
incompatible promoted function argument <EM>dallow</EM> <A HREF="tdfc6.html#37">==></A>
incompatible type qualifier <EM>dallow</EM> <A HREF="tdfc6.html#39">==></A>
incomplete type as object type <EM>permit</EM> <A HREF="tdfc10.html#17">==> </A>
indented # directive <EM>permit</EM> <A HREF="tdfc9.html#7">==></A>
initialization of struct/union (auto) <EM>permit</EM> <A HREF="tdfc10.html#33">==> </A>
linkage resolution : <EM>linkage_spec</EM> <A HREF="tdfc10.html#1">==></A>
longlong type <EM>permit</EM> <A HREF="tdfc7.html#24">==></A>
no directive/nline after ident <EM>permit</EM> <A HREF="tdfc9.html#21">==> </A>
no external declaration <EM>permit</EM> <A HREF="tdfc10.html#50">==></A>
no ident after # <EM>permit</EM> <A HREF="tdfc9.html#11">==></A>
no nline after file end <EM>permit</EM> <A HREF="tdfc9.html#23">==></A>
prototype <EM>permit</EM> <A HREF="tdfc6.html#17">==></A>
prototype (weak) <EM>permit</EM> <A HREF="tdfc6.html#20">==></A>
set longlong type : <EM>type_name</EM> <A HREF="tdfc7.html#24">==></A>
set name limit <EM>integer_constant</EM> <A HREF="tdfc10.html#25">==></A>
set size_t : <EM>type_name </EM><EM><A HREF="tdfc7.html#10">==></A></EM>
text after directive <EM>permit</EM> <A HREF="tdfc9.html#19">==></A>
unify external linkage <EM>status</EM> <A HREF="tdfc10.html#1">==></A>
unify incompatible string literal <EM>permit</EM> <A HREF="tdfc10.html#43">==> </A>
unknown escape <EM>permit</EM> <A HREF="tdfc10.html#36">==></A>
unknown pragma <EM>permit</EM> <A HREF="tdfc9.html#1">==></A>
unknown struct/union <EM>dallow</EM> <A HREF="tdfc10.html#21">==></A>
unknown directive <EM>permit</EM> <A HREF="tdfc9.html#1">==></A>
unmatched quote <EM>permit</EM> <A HREF="tdfc9.html#15">==></A>
variable initialization <EM>dallow</EM> <A HREF="tdfc10.html#35">==></A>
weak macro equality <EM>permit</EM> <A HREF="tdfc9.html#9">==></A>
writeable string literal <EM>permit</EM> <A HREF="tdfc10.html#41">==></A>
</PRE>
<LI><CODE><EM>set_sign:</EM></CODE>
<PRE>
signed
unsign
either
</PRE>
<LI><CODE><EM>pp_directive:</EM></CODE>
<PRE>
file
ident
assert
unassert
weak
</PRE>
<LI><CODE><EM>pp_spec:</EM></CODE>
<PRE>
allow
warning
(ignore) allow
(ignore) warning
</PRE>
<LI><CODE><EM>linkage_spec:</EM></CODE>
<PRE>
(internal) on
(internal) warning
(external) on
(external) warning
off
</PRE>
<LI><CODE><EM>state:</EM></CODE>
<PRE>
on
warning
off
</PRE>
<LI><CODE><EM>permit:</EM></CODE>
<PRE>
allow
warning
disallow
</PRE>
<LI><CODE><EM>dallow:</EM></CODE>
<PRE>
allow
disallow
</PRE>
<LI><CODE><EM>token_pragma:</EM></CODE>
<PRE>
ARITHMETIC <A HREF="tdfc20.html#13">==></A>
DEFINE MEMBER
EXP <A HREF="tdfc20.html#3">==></A>
FUNC <A HREF="tdfc20.html#24">==></A>
MEMBER <A HREF="tdfc20.html#19">==></A>
NAT <A HREF="tdfc20.html#3">==></A>
PROC <A HREF="tdfc20.html#22">==></A>
STATEMENT <A HREF="tdfc20.html#6">==></A>
STRUCT <A HREF="tdfc20.html#16">==></A>
TYPE <A HREF="tdfc20.html#9">==></A>
UNION <A HREF="tdfc20.html#16">==></A>
VARIETY <A HREF="tdfc20.html#11">==></A>
</PRE>
<LI><CODE><EM>token_operation:</EM></CODE>
<PRE>
define
no_def
extend
ignore
implement
interface
promote <A HREF="tdfc22.html#4">==></A>
</PRE>
<LI><CODE><EM>integer_pragma:</EM></CODE>
<PRE>
integer literal <EM>lit_class_type_list</EM> <A HREF="tdfc17.html#2">==></A>
</PRE>
<LI><CODE><EM>lit_class_type_list:</EM></CODE>
<PRE>
*<EM>int_type_spec</EM>
integer_constant <EM>int_type_spec</EM> | <EM>lit_class_type_list</EM>
</PRE>
<LI><CODE><EM>int_type_spec:</EM></CODE>
<PRE>
<EM>type_name</EM>
*warning<SUB><I>opt</I></SUB> : <EM>identifier</EM>
** :
</PRE>
</OL>
<P>
<HR>
<P><I>Part of the <A HREF="../index.html">TenDRA Web</A>.<BR>Crown
Copyright © 1998.</I></P>
</BODY>
</HTML>