This file is indexed.

/usr/share/doc/camlp5/html/strict.html is in camlp5 6.16-1.

This file is owned by root:root, with mode 0o644.

The actual contents of the file can be viewed below.

  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
 "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
  <!-- strict.html,v -->
  <!-- Copyright (c) INRIA 2007-2014 -->
  <title>Camlp5</title>
  <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  <meta http-equiv="Content-Style-Type" content="text/css" />
  <link rel="stylesheet" type="text/css" href="styles/base.css"
        title="Normal" />
  <link rel="alternate" type="application/rss+xml" href="rss/camlp5.rss" 
        title="Camlp5"/>
</head>
<body>

<div id="menu">
  <h1>- <a href="http://pauillac.inria.fr/~ddr/camlp5">Camlp5</a> -</h1>
  <p class="subtitle">Version 6.16</p>
  <ul>
    <li><a href="index.html">Introduction</a></li>
    <li><a href="strict.html">Transitional and Strict</a></li>
    <li><a href="ptools.html">Parsing and printing tools</a></li>
  </ul>
  <ul>
    <li>Parsing tools
      <ul>
        <li><a href="parsers.html">Stream parsers</a></li>
        <li><a href="lexers.html">Stream lexers</a></li>
        <li><a href="fparsers.html">Functional parsers</a></li>
        <li><a href="bparsers.html">Backtracking parsers</a></li>
        <li><a href="grammars.html">Extensible grammars</a></li>
      </ul>
    </li>
    <li>Printing tools
      <ul>
        <li><a href="printers.html">Extensible printers</a></li>
        <li><a href="pprintf.html">Pprintf</a></li>
        <li><a href="pretty.html">Pretty print</a></li>
      </ul>
    </li>
    <li>Language extensions
      <ul>
        <li><a href="locations.html">Locations</a></li>
        <li><a href="ml_ast.html">Syntax tree</a></li>
        <li><a href="ast_transi.html">Syntax tree - transi</a></li>
        <li><a href="ast_strict.html">Syntax tree - strict</a></li>
        <li><a href="q_ast.html">Quotation kit q_ast.cmo</a></li>
        <li><a href="pcaml.html">The Pcaml module</a></li>
        <li><a href="directives.html">Directives</a></li>
        <li><a href="syntext.html">Extensions of syntax</a></li>
        <li><a href="opretty.html">Extensions of printing</a></li>
        <li><a href="redef.html">Redefining OCaml syntax</a></li>
        <li><a href="quot.html">Quotations</a></li>
        <li><a href="revsynt.html">Revised syntax</a></li>
        <li><a href="scheme.html">Scheme syntax</a></li>
        <li><a href="macros.html">Macros</a></li>
        <li><a href="pragma.html">Pragma directive</a></li>
        <li><a href="extfun.html">Extensible functions</a></li>
      </ul>
    </li>
    <li>Appendix
      <ul>
        <li><a href="commands.html">Commands and Files</a></li>
        <li><a href="library.html">Library</a></li>
        <li><a href="sources.html">Camlp5 sources</a></li>
        <li><a href="about.html">About Camlp5</a></li>
      </ul>
    </li>
  </ul>
</div>

<div id="content">

<h1 class="top">Transitional and Strict modes</h1>

<p>Since version 5.00, Camlp5 has been able to be installed in two
  modes: the <em>transitional</em> mode and the <em>strict</em>
  mode. When Camlp5 is installed, it works with one only of these
  modes (the two modes contain indeed different definitions of some
  interfaces and are incompatible with one another). The user must
  choose in which mode he wants to use Camlp5.</p>

<p>This notion has been introduced to ensure backward compatibility of
  the Camlp5 syntax tree, together with the usage of a new quotation
  kit "<tt>q_ast.cmo</tt>", which allows to use Camlp5 syntax tree
  quotations in user syntax (with all its possible extensions).</p>

<dl style="font-size:80%; font-style:oblique">
  <dt>A short example of these syntax tree quotations:</dt>
  <dd>
    <p>If the syntax of the <a href="grammars.html">extensible
        grammars</a> has been added, it is possible to write things
      like:</p>
<pre>
  &lt;:expr&lt; EXTEND a: [ [ c = d -> $e$ ] ]; END >>;
</pre>
    <p>representing the syntax tree of this statement: this is not
      possible with the classical quotation kit "<tt>q_MLast.cmo</tt>"
      because all quotations must be there only
      in <a href="revsynt.html">revised syntax</a> and without syntax
      extensions.</p>
  </dd>
</dl>

<p>Here are the differences between the two modes:</p>

<dl>
  <dt>Transitional</dt>
  <dd>
    <dl>
      <dt>Compatibility</dt>
      <dd>The syntax tree is fully compatible with the previous
        versions of Camlp5, no changes has to be done in the users'
        programs.</dd>
      <dt>Quotation kit "<tt>q_ast.cmo</tt>"</dt>
      <dd>The antiquotations are not available: when used, a syntax
        error message is displayed.</dd>
    </dl>
  </dd>
  <dt>Strict</dt>
  <dd>
    <dl>
      <dt>Compatibility</dt>
      <dd>The syntax tree is different, users' programs may have to be
        modified, but not necessarily.</dd>
      <dt>Quotation kit "<tt>q_ast.cmo</tt>"</dt>
      <dd>All antiquotations are available.</dd>
    </dl>
  </dd>
</dl>

<p>In strict mode, the programs have more chances to be compatible
  with the previous versions if they use syntax tree quotations rather
  than syntax tree nodes. A solution is therefore to change the
  expressions and patterns using nodes into expressions and patterns
  using quotations (which is backward compatible).</p>

<h2 id="a:Which-mode-is-installed--">Which mode is installed ?</h2>

<p>To determine the mode of an installed version of Camlp5, type:</p>

<pre>
  camlp5 -pmode
</pre>

<h2 id="a:Selecting-mode-when-compiling-Camlp5">Selecting mode when compiling Camlp5</h2>

<p>When compiling Camlp5 from source, the mode must first be selected
  at configuration time. The <em>configure</em> script must be run
  with one of these options:</p>

<pre>
  ./configure -strict
  ./configure -transitional
</pre>

<p>The default is "transitional", i.e. without option, the sources are
  compiled in transitional mode.</p>

<a class="toplink" href="strict.html"></a>
<div class="trailer">

  <hr style="margin:0" /><div style="font-size: 80%"><em>Copyright 2007-2014
      Daniel de Rauglaudre (INRIA)</em></div>

  <p class="bottom">
    <a href="http://validator.w3.org/check?uri=referer"><img
       alt="Valid XHTML 1.1" height="31" width="88" /></a>
  </p>

</div>

</div>

</body>
</html>