autogenerate the table of contents

R=rsc
DELTA=149  (1 added, 145 deleted, 3 changed)
OCL=25231
CL=25234
diff --git a/doc/go_spec.html b/doc/go_spec.html
index 4f87435..368f5c5 100644
--- a/doc/go_spec.html
+++ b/doc/go_spec.html
@@ -1,13 +1,5 @@
 
 
-This document is a semi-formal specification of the Go systems
-programming language.
-<p>
-<font color=red>
-This document is not ready for external review, it is under active development.
-Any part may change substantially as design progresses.
-</font>
-
 <!--
 Biggest open issues:
 [ ] General iterators
@@ -143,143 +135,6 @@
 - Jan 1, 2009: enough support to write interesting programs
 -->
 
-
-<h2>Contents</h2>
-<p>
-TODO: This should be autogenerated but that will take work to make h3s appear in this list
-</p>
-<ul>
-<li>Introduction
-	
-<li>Notation
-
-<li>Source code representation
-	<ul>
-	<li>Characters
-	<li>Letters and digits
-	</ul>
-
-<li>Vocabulary
-	<ul>
-	<li>Identifiers
-	<li>Numeric literals
-	<li>Character and string literals
-	<li>Operators and delimitors
-	<li>Reserved words
-	</ul>
-
-<li>Declarations and scope rules
-	<ul>
-	<li>Predeclared identifiers
-	<li>Exported identifiers
-	<li>Const declarations
-		<ul>
-		<li>Iota
-		</ul>
-	<li>Type declarations
-	<li>Variable declarations
-	</ul>
-
-<li>Types
-	<ul>
-	<li>Basic types
-		<ul>
-		<li>Arithmetic types
-		<li>Booleans
-		<li>Strings
-		</ul>
-	<li>Array types
-	<li>Struct types
-	<li>Pointer types
-	<li>Function types
-	<li>Interface types
-	<li>Slice types
-	<li>Map types
-	<li>Channel types
-	<li>Type equality
-	</ul>
-
-<li>Expressions
-	<ul>
-	<li>Operands
-		<ul>
-		<li>Constants
-		<li>Qualified identifiers
-		<li>Composite literals
-		<li>Function literals
-		</ul>
-		
-	<li>Primary expressions
-		<ul>
-		<li>Selectors
-		<li>Indexes
-		<li>Slices
-		<li>Type guards
-		<li>Calls
-			<ul>
-			<li>Parameter passing
-			</ul>
-		</ul>
-		
-	<li>Operators
-		<ul>
-		<li>Arithmetic operators
-			<ul>
-			<li>Integer overflow
-			</ul>
-		<li>Comparison operators
-		<li>Logical operators
-		<li>Address operators
-		<li>Communication operators
-		</ul>
-		
-	<li>Constant expressions
-	</ul>
-
-<li>Statements
-	<ul>
-	<li>Label declarations
-	<li>Expression statements
-	<li>IncDec statements
-	<li>Assignments
-	<li>If statements
-	<li>Switch statements
-	<li>For statements
-	<li>Go statements
-	<li>Select statements
-	<li>Return statements
-	<li>Break statements
-	<li>Continue statements
-	<li>Label declaration
-	<li>Goto statements
-	<li>Defer statements
-	</ul>
-
-<li>Function declarations
-	<ul>
-	<li>Method declarations
-	<li>Predeclared functions
-		<ul>
-		<li>Length and capacity
-		<li>Conversions
-		<li>Allocation
-		<li>Making slices, maps, and channels
-		</ul>
-	</ul>
-
-<li>Packages
-
-<li>Program initialization and execution
-
-<li>Systems considerations
-	<ul>
-	<li>Package unsafe
-	<li>Size and alignment guarantees
-	</ul>
-</ul>
-
-<hr>
-
 <h2>Introduction</h2>
 
 <p>
@@ -301,7 +156,7 @@
 The grammar is compact and regular, allowing for easy analysis by
 automatic tools such as integrated development environments.
 </p>
-
+<hr>
 <h2>Notation</h2>
 <p>
 The syntax is specified using Extended Backus-Naur Form (EBNF):
@@ -344,6 +199,7 @@
 Where possible, recursive productions are used to express evaluation order
 and operator precedence syntactically.
 </p>
+<hr>
 
 <h2>Source code representation</h2>