summary refs log tree commit diff stats
path: root/compiler/cgendata.nim
diff options
context:
space:
mode:
authorMiguel <leu-gim@moy-server.ru>2014-01-26 05:37:18 +0400
committerMiguel <leu-gim@moy-server.ru>2014-01-26 05:37:18 +0400
commita8b4e3c764dd967e1ac90305a574c4cd5e0d019b (patch)
tree9165419d8557b493bf65a3de04f248ae6f2288b9 /compiler/cgendata.nim
parent4396270fc7c447fa7ce9478a6bf9682ba7c496a7 (diff)
parent5d712e0d3f9f5b8e486720c8bedd749656b527d8 (diff)
downloadNim-a8b4e3c764dd967e1ac90305a574c4cd5e0d019b.tar.gz
Merge branch 'devel' of git://github.com/Araq/Nimrod
Diffstat (limited to 'compiler/cgendata.nim')
-rw-r--r--compiler/cgendata.nim15
1 files changed, 8 insertions, 7 deletions
diff --git a/compiler/cgendata.nim b/compiler/cgendata.nim
index a803c0ba1..9cd2c0d87 100644
--- a/compiler/cgendata.nim
+++ b/compiler/cgendata.nim
@@ -61,8 +61,8 @@ type
   
   TCProc{.final.} = object    # represents C proc that is currently generated
     prc*: PSym                # the Nimrod proc that this C proc belongs to
-    BeforeRetNeeded*: bool    # true iff 'BeforeRet' label for proc is needed
-    ThreadVarAccessed*: bool  # true if the proc already accessed some threadvar
+    beforeRetNeeded*: bool    # true iff 'BeforeRet' label for proc is needed
+    threadVarAccessed*: bool  # true if the proc already accessed some threadvar
     nestedTryStmts*: seq[PNode] # in how many nested try statements we are
                                 # (the vars must be volatile then)
     inExceptBlock*: int       # are we currently inside an except block?
@@ -78,7 +78,7 @@ type
     maxFrameLen*: int         # max length of frame descriptor
     module*: BModule          # used to prevent excessive parameter passing
     withinLoop*: int          # > 0 if we are within a loop
-    gcFrameId*: natural       # for the GC stack marking
+    gcFrameId*: Natural       # for the GC stack marking
     gcFrameType*: PRope       # the struct {} we put the GC markers into
   
   TTypeSeq* = seq[PType]
@@ -86,9 +86,9 @@ type
     module*: PSym
     filename*: string
     s*: TCFileSections        # sections of the C file
-    PreventStackTrace*: bool  # true if stack traces need to be prevented
+    preventStackTrace*: bool  # true if stack traces need to be prevented
     usesThreadVars*: bool     # true if the module uses a thread var
-    FrameDeclared*: bool      # hack for ROD support so that we don't declare
+    frameDeclared*: bool      # hack for ROD support so that we don't declare
                               # a frame var twice in an init proc
     isHeaderFile*: bool       # C source file is the header file
     includesStringh*: bool    # C source file already includes ``<string.h>``
@@ -108,13 +108,14 @@ type
     forwardedProcs*: TSymSeq  # keep forwarded procs here
     typeNodes*, nimTypes*: int # used for type info generation
     typeNodesName*, nimTypesName*: PRope # used for type info generation
-    labels*: natural          # for generating unique module-scope names
+    labels*: Natural          # for generating unique module-scope names
     extensionLoaders*: array['0'..'9', PRope] # special procs for the
                                               # OpenGL wrapper
     injectStmt*: PRope
 
 var
-  mainModProcs*, mainModInit*, mainDatInit*: PRope # parts of the main module
+  mainModProcs*, mainModInit*, otherModsInit*, mainDatInit*: PRope
+    # varuious parts of the main module
   gMapping*: PRope             # the generated mapping file (if requested)
   gModules*: seq[BModule] = @[] # list of all compiled modules
   gForwardedProcsCounter*: int = 0
e Logo Style vol 3:Acknowledgments</TITLE> </HEAD> <BODY> <CITE>Computer Science Logo Style</CITE> volume 3: <CITE>Beyond Programming</CITE> 2/e Copyright (C) 1997 MIT <H1>Acknowledgments</H1> <TABLE width="100%"><TR><TD> <IMG SRC="../csls3.jpg" ALT="cover photo"> <TD><TABLE> <TR><TD align="right"><CITE><A HREF="http://www.cs.berkeley.edu/~bh/">Brian Harvey</A><BR>University of California, Berkeley</CITE> <TR><TD align="right"><BR> <TR><TD align="right"><A HREF="../pdf/v3ch00.pdf">Download PDF version</A> <TR><TD align="right"><A HREF="../v3-toc2.html">Back to Table of Contents</A> <TR><TD align="right"><A HREF="preface.html"><STRONG>BACK</STRONG></A> chapter thread <A HREF="../v3ch1/v3ch1.html"><STRONG>NEXT</STRONG></A> <TR><TD align="right"><A HREF="https://mitpress.mit.edu/books/computer-science-logo-style-second-edition-volume-3">MIT Press web page for <CITE>Computer Science Logo Style</CITE></A> </TABLE></TABLE> <HR> <P> As for the previous two volumes, my greatest debts are to Hal Abelson and Paul Goldenberg. Both of them read the manuscript carefully through several drafts. Hal is great at noticing the large problems; he makes comments like &quot;throw out this whole chapter&quot; and &quot;you are putting the cart before the horse here.&quot; Paul's comments were generally on a more detailed level, pointing out sections in which potentially valuable content was sabotaged by a presentation that nobody would understand. Together they have improved the book enormously. <P>Some of the examples in this book are ones that were posed to me by other people in other contexts. Horacio Reggini raised the issue of listing (not merely counting) the combinations of <EM>r</EM> elements of a list; Dick White asked me to investigate just how secure the Simplex lock is; Chris Anderson taught the probability class where the question about multinomial expansions arose. I'm grateful to Anita Harnadek, whom I've never met, for a logic problem I use to demonstrate inference systems. (She is, by the way, the author of a fantastic textbook called <EM>Critical Thinking</EM> that I recommend to teachers of almost any subject: math, English, or social studies.) Jim Davis's Logo interpreter in Logo (in the <EM>LogoWorks</EM> anthology I co-edited) was an inspiration for the Pascal compiler. <P> I'm grateful to Dan Bobrow, Sherry Turkle, and Terry Winograd for permission to quote from their work here. In particular, Bobrow's doctoral thesis forms the basis for my chapter on artificial intelligence, and I'm grateful for the program design as well as my extensive quotations from the thesis itself. He was also very patient in answering technical questions about details of a program he wrote over 20 years ago. <P> Mike Clancy taught me about generating functions and used them to find the closed form definition for the multinomial problem; Michael Somos, via the <CODE>sci.math</CODE> newsgroup, provided the closed form solution to the Simplex lock problem. Paul Hilfinger straightened me out about parser complexity. <P> <P><A HREF="../v3-toc2.html">(back to Table of Contents)</A> <P><A HREF="preface.html"><STRONG>BACK</STRONG></A> chapter thread <A HREF="../v3ch1/v3ch1.html"><STRONG>NEXT</STRONG></A> <P> <ADDRESS> <A HREF="../index.html">Brian Harvey</A>, <CODE>bh@cs.berkeley.edu</CODE> </ADDRESS> </BODY> </HTML>