[
Top
]
[
Contents
]
[Index]
[
?
]
Table of Contents
1. Dobrodošli na GNU Pascal
...
2. Neke od najinteresantnijih značajki GPC-a
3. New Features of GNU Pascal.
3.1 General Changes And Possible Incompatibilies with Previous Versions
3.2 Command Line Options and Compiler Directives
3.3 Compiler and RTS Built-in Declarations
3.4 GPC Units
3.5 GPC Manual
3.6 Demo Programs
3.7 Utilities
3.8 Test Suite
3.9 Legend
4. The GNU Pascal Frequently Asked Questions List.
4.1 GNU Pascal
4.1.1 What and why?
4.1.2 What is the current version?
4.1.3 Is it compatible with Turbo Pascal (R)?
4.1.4 Which platforms are supported by GNU Pascal?
4.2 Installing GPC
4.2.1 What to read next
4.2.2 Which components do I need to compile Pascal code?
4.2.3 How do I debug my Pascal programs?
4.2.4 What additional libraries should I have?
4.2.5 Contributed units
4.2.6 Can you recommend an IDE?
4.3 GNU Pascal on the DJGPP (MS-DOS) platform
4.3.1 What is DJGPP?
4.3.2 If you need more information
4.3.3 What do I download?
4.3.4 How do I install the compiler?
4.3.5 I cannot read the Info documentation!
4.3.6 GPC says: no DPMI
4.3.7 I have troubles with assembly code
4.3.8 Tell me how to do DPMI, BIOS and other DOS related things.
4.3.9 I got an exception when accessing an
`array [1 .. 4000000] of Byte'
.
4.4 Strings
4.4.1 What's this confusion about strings?
4.4.2 Overlaying strings in variant records
4.4.3 Why does
`s[0]'
not contain the length?
4.4.4 Watch out when using strings as parameters
4.4.5 Support for BP compatible short strings
4.4.6 What about C strings?
4.5 Getting Help
4.6 Miscellaneous
4.6.1 I want to contribute; where do I start?
4.6.2 Where is the GNU Pascal web site?
4.6.3 About this FAQ
5. How to download, compile and install GNU Pascal.
5.1 Where and what to download
5.2 Installation instructions for a GPC binary distribution
5.3 Compiling GPC
5.4 Compilation notes for specific platforms
5.4.1 MS-DOS with DJGPP
5.4.2 MS-DOS or OS/2 with EMX
5.4.3 MS Windows 95/98/NT
5.5 Building and Installing a cross-compiler
5.6 Crossbuilding a compiler.
6. A QuickStart Guide from Borland Pascal to GNU Pascal.
6.1 BP Compatibility
6.2 BP Incompatibilities
6.2.1 String type
6.2.2 Qualified identifiers
6.2.3 Assembler
6.2.4 Move; FillChar
6.2.5 Real type
6.2.6 Graph unit
6.2.7 OOP units
6.2.8 Keep; GetIntVec; SetIntVec
6.2.9 TFDDs
6.2.10 Mem; Port; Ptr; Seg; Ofs; PrefixSeg; etc.
6.2.11 Endianness assumptions
6.2.12 - -borland-pascal - disable GPC extensions
6.2.13 -w - disable all warnings
6.2.14 - -uses=System - Swap; HeapError; etc.
6.2.15 -D__BP_TYPE_SIZES__ - small integer types etc.
6.2.16 - -pack-struct - disable structure alignment
6.2.17 -D__BP_RANDOM__ - BP compatible pseudo random number generator
6.2.18 -D__BP_UNPORTABLE_ROUTINES__ - Intr; DosVersion; etc.
6.2.19 -D__BP_PARAMSTR_0__ - BP compatible ParamStr (0) behaviour
6.3 IDE versus command line
6.4 Comments
6.5 BP Compatible Compiler Directives
6.6 Units, GPI files and AutoMake
6.7 Optimization
6.8 Debugging
6.9 Objects
6.10 Strings in BP and GPC
6.11 Typed Constants
6.12 Bit, Byte and Memory Manipulation
6.13 User-defined Operators in GPC
6.14 Data Types in BP and GPC
6.15 BP Procedural Types
6.16 Files
6.17 Built-in Constants
6.18 Built-in Operators in BP and GPC
6.19 Built-in Procedures and Functions
6.20 Special Parameters
6.21 Miscellaneous
6.22 BP and Extended Pascal
6.23 Portability hints
7. Opcije u naredbenoj liniji koje podržava GNU Pascal.
7.1 GPC opcije osim GCC-ovih.
7.2 Najčešće korištene opcije GPC-a
8. The Programmer's Guide to GPC
8.1 Source Structures
8.1.1 The Source Structure of Programs
8.1.2 Label Declaration
8.1.3 Constant Declaration
8.1.4 Type Declaration
8.1.5 Variable Declaration
8.1.6 Subroutine Declaration
8.1.6.1 The Procedure
8.1.6.2 The Function
8.1.6.3 The Operator
8.1.6.4 Subroutine Parameter List Declaration
8.1.7 Statements
8.1.7.1 Assignment
8.1.7.2 begin end Compound Statement
8.1.7.3 if Statement
8.1.7.4 case Statement
8.1.7.5 for Statement
8.1.7.6 while Statement
8.1.7.7 repeat Statement
8.1.7.8 asm Inline
8.1.7.9 with Statement
8.1.7.10 goto Statement
8.1.7.11 Procedure Call
8.1.7.12 The Declaring Statement
8.1.7.13 Loop Control Statements
8.1.8 Import Part and Module/Unit Concept
8.1.8.1 The Source Structure of ISO-10206 Extended Pascal Modules
8.1.8.2 The Source Structure of UCSD/Borland Pascal Units
8.2 Data Types
8.2.1 Type Definition
8.2.2 Ordinal Types
8.2.3 Integer Types
8.2.3.1 The CPU's Natural Integer Types
8.2.3.2 The Main Branch of Integer Types
8.2.3.3 Integer Types with Specified Size
8.2.3.4 Integer Types and Compatibility
8.2.3.5 Summary of Integer Types
8.2.4 Built-in Real (Floating Point) Types
8.2.5 Strings Types
8.2.6 Character Types
8.2.7 File Types
8.2.8 Boolean (Intrinsic)
8.2.9 Pointer (Intrinsic)
8.2.10 Type Definition Possibilities
8.2.10.1 Subrange Types
8.2.10.2 Enumerated Types
8.2.10.3 Array Types
8.2.10.4 Record Types
8.2.10.5 Variant Records
8.2.10.6 EP's Schema Types including
`String'
8.2.10.7 Set Types
8.2.10.8 Pointer Types
8.2.10.9 Procedural and Functional Types
8.2.10.10 Object Types
8.2.10.11 Initial values to type denoters
8.2.10.12 Restricted Types
8.2.11 Machine-dependent Type Implementation
8.2.11.1 Endianness
8.2.11.2 Alignment
8.3 Operators
8.3.1 Built-in Operators
8.3.2 User-defined Operators
8.4 Procedure And Function Parameters
8.4.1 Parameters declared as
`protected'
or
`const'
8.4.2 The Standard way to pass arrays of variable size
8.4.3 BP's alternative to Conformant Arrays
8.5 Accessing parts of strings (and other arrays)
8.6 Pointer Arithmetics
8.7 Type Casts
8.8 Object-Orientated Programming
8.9 Compiler Directives And The Preprocessor
8.10 Routines Built-in or in the Run Time System
8.10.1 File Routines
8.10.2 String Operations
8.10.3 Accessing Command Line Arguments
8.10.4 Memory Management Routines
8.10.5 Operations for Integer and Ordinal Types
8.10.6 Complex Number Operations
8.10.7 Set Operations
8.10.8 Date And Time Routines
8.11 Interfacing with Other Languages
8.11.1 Importing Libraries from Other Languages
8.11.2 Exporting GPC Libraries to Other Languages
8.12 Notes for Debugging
8.13 Pascal declarations for GPC's Run Time System
8.14 Units included with GPC
8.14.1 BP compatibility: CRT & WinCRT, portable, with many extensions
8.14.2 BP compatibility: Dos
8.14.3 Overcome some differences between Dos and Unix
8.14.4 Higher level file and directory handling
8.14.5 Arithmetic with unlimited size and precision
8.14.6 Turbo Power compatibility, etc.
8.14.7 Primitive heap checking
8.14.8 Internationalization
8.14.9
`MD5'
Message Digests
8.14.10 BP compatibility: Overlay
8.14.11 Start a child process, connected with pipes, also on Dos
8.14.12 BP compatibility (partly):
`Port'
,
`PortW'
arrays
8.14.13 BP compatibility: Printer, portable
8.14.14 Regular Expression matching and substituting
8.14.15 BP compatibility: Strings
8.14.16 Higher level string handling
8.14.17 BP compatibility: System
8.14.18 Trap runtime errors
8.14.19 BP compatibility: Turbo3
8.14.20 BP compatibility: WinDos
9. The Alphabetical GPC Language Reference
9.1 Abs
9.2 absolute
9.3 abstract
9.4 Addr
9.5 AlignOf
9.6 all
9.7 and
9.8 and then
9.9 and_then
9.10 AnsiChar
9.11 Append
9.12 ArcTan
9.13 Arg
9.14 array
9.15 as
9.16 asm
9.17 asmname
9.18 Assign
9.19 Assigned
9.20 attribute
9.21 begin
9.22 Bind
9.23 bindable
9.24 Binding
9.25 BindingType
9.26 BitSizeOf
9.27 BlockRead
9.28 BlockWrite
9.29 Boolean
9.30 Break
9.31 Byte
9.32 ByteBool
9.33 ByteCard
9.34 ByteInt
9.35 C
9.36 Card
9.37 Cardinal
9.38 case
9.39 Char
9.40 ChDir
9.41 Chr
9.42 c_language
9.43 class
9.44 Close
9.45 Cmplx
9.46 Comp
9.47 Complex
9.48 Concat
9.49 Conjugate
9.50 const
9.51 constructor
9.52 Continue
9.53 Copy
9.54 Cos
9.55 CString
9.56 CString2String
9.57 CStringCopyString
9.58 Date
9.59 Dec
9.60 DefineSize
9.61 Delete
9.62 destructor
9.63 Dispose
9.64 div
9.65 do
9.66 Double
9.67 downto
9.68 else
9.69 Empty
9.70 end
9.71 EOF
9.72 EOLn
9.73 EpsReal
9.74 EQ
9.75 Erase
9.76 Exclude
9.77 Exit
9.78 Exp
9.79 export
9.80 exports
9.81 Extend
9.82 Extended
9.83 extern
9.84 external
9.85 Fail
9.86 False
9.87 far
9.88 file
9.89 FileMode
9.90 FilePos
9.91 FileSize
9.92 FillChar
9.93 Finalize
9.94 Flush
9.95 for
9.96 FormatString
9.97 forward
9.98 Frac
9.99 FrameAddress
9.100 FreeMem
9.101 function
9.102 GE
9.103 Get
9.104 GetMem
9.105 GetTimeStamp
9.106 goto
9.107 GT
9.108 Halt
9.109 High
9.110 if
9.111 Im
9.112 implementation
9.113 import
9.114 in
9.115 Inc
9.116 Include
9.117 Index
9.118 inherited
9.119 Initialize
9.120 inline
9.121 InOutRes
9.122 Input
9.123 Insert
9.124 Int
9.125 Integer
9.126 interface
9.127 interrupt
9.128 IOResult
9.129 is
9.130 label
9.131 LastPosition
9.132 LE
9.133 Length
9.134 library
9.135 Ln
9.136 LoCase
9.137 LongBool
9.138 LongCard
9.139 LongestBool
9.140 LongestCard
9.141 LongestInt
9.142 LongestReal
9.143 LongestWord
9.144 LongInt
9.145 LongReal
9.146 LongWord
9.147 Low
9.148 LT
9.149 Mark
9.150 Max
9.151 MaxChar
9.152 MaxInt
9.153 MaxReal
9.154 MedBool
9.155 MedCard
9.156 MedInt
9.157 MedReal
9.158 MedWord
9.159 Min
9.160 MinReal
9.161 MkDir
9.162 mod
9.163 module
9.164 Move
9.165 MoveLeft
9.166 MoveRight
9.167 Name
9.168 NE
9.169 near
9.170 New
9.171 NewCString
9.172 nil
9.173 not
9.174 Null
9.175 object
9.176 Odd
9.177 of
9.178 only
9.179 operator
9.180 or
9.181 Ord
9.182 or else
9.183 or_else
9.184 otherwise
9.185 Output
9.186 Override
9.187 Pack
9.188 packed
9.189 Page
9.190 PAnsiChar
9.191 ParamCount
9.192 ParamStr
9.193 PChar
9.194 Pi
9.195 PObjectType
9.196 Pointer
9.197 Polar
9.198 Pos
9.199 Position
9.200 pow
9.201 Pred
9.202 private
9.203 procedure
9.204 program
9.205 property
9.206 protected
9.207 PtrCard
9.208 PtrDiffType
9.209 PtrInt
9.210 PtrWord
9.211 public
9.212 published
9.213 Put
9.214 qualified
9.215 Random
9.216 Randomize
9.217 Re
9.218 Read
9.219 ReadLn
9.220 ReadStr
9.221 Real
9.222 record
9.223 register
9.224 Release
9.225 Rename
9.226 repeat
9.227 Reset
9.228 resident
9.229 restricted
9.230 Result
9.231 Return
9.232 ReturnAddress
9.233 Rewrite
9.234 RmDir
9.235 Root
9.236 Round
9.237 RunError
9.238 Seek
9.239 SeekRead
9.240 SeekUpdate
9.241 SeekWrite
9.242 segment
9.243 Self
9.244 set
9.245 SetFileTime
9.246 SetLength
9.247 SetType
9.248 shl
9.249 ShortBool
9.250 ShortCard
9.251 ShortInt
9.252 ShortReal
9.253 ShortWord
9.254 shr
9.255 Sin
9.256 Single
9.257 SizeOf
9.258 SizeType
9.259 SmallInt
9.260 Sqr
9.261 SqRt
9.262 StandardError
9.263 StandardInput
9.264 StandardOutput
9.265 static
9.266 StdErr
9.267 Str
9.268 String
9.269 String2CString
9.270 SubStr
9.271 Succ
9.272 Text
9.273 TextWritable
9.274 then
9.275 Time
9.276 TimeStamp
9.277 to
9.278 to begin do
9.279 to end do
9.280 Trim
9.281 True
9.282 Trunc
9.283 Truncate
9.284 type
9.285 type of
9.286 TypeOf
9.287 Unbind
9.288 unit
9.289 Unpack
9.290 until
9.291 UpCase
9.292 Update
9.293 uses
9.294 Val
9.295 value
9.296 var
9.297 view
9.298 virtual
9.299 Void
9.300 volatile
9.301 while
9.302 with
9.303 Word
9.304 WordBool
9.305 Write
9.306 WriteLn
9.307 WriteStr
9.308 xor
10. Pascalove ključne riječi i operatori podržani u GNU Pascalu.
11. Gdje dobiti podršku za GNU Pascal; kako prijaviti bugove
11.1 GPC mailing lista
11.2 Arhive GPC mailing listi
11.3 Newsgroupe (grupe USENET vijesti) relevantne za GPC
11.4 Gdje naći profesionalnu podršku za GPC
11.5 Kad se compiler skrši
...
11.6 Kako prijaviti GPC bug
11.7 Pokretanje GPC Test Suite kolekcije testova
12. The GNU Pascal To-Do List.
12.1 Known bugs in GPC
12.2 Features planned for GPC
12.2.1 Planned features: Strings
12.2.2 Planned features: Records/arrays
12.2.3 Planned features: Files
12.2.4 Planned features: Other types
12.2.5 Planned features: Units and modules
12.2.6 Planned features: OOP
12.2.7 Planned features: Misc
12.2.8 Planned features: Utilities
12.3 Fixed bugs and implemented features
12.3.1 Problems that have been solved
12.3.2 Features that have been implemented
13. The GPC Source Reference
13.1 The Pascal preprocessor
13.2 GPC's Lexical Analyzer
13.3 Interrelations between the lexer and parser
13.4 Language Definition: GPC's Parser
13.5 Tree Nodes
13.6 Parameter Passing
13.7 GPI files -- GNU Pascal Interfaces
13.8 GPC's AutoMake Mechanism -- How it Works
13.9 Files that make up GPC; Integrating GNU Pascal in GCC
A. Autori i suradnici na GNU Pascal projektu.
B. Resursi za korištenje s GPC-om
C. GNU GENERAL PUBLIC LICENSE
C.1 GPL Preamble
C.2 How to Apply These Terms to Your New Programs
D. GNU LESSER GENERAL PUBLIC LICENSE
D.1 LGPL Preamble
D.2 How to Apply These Terms to Your New Libraries
E. The GNU Project.
E.1 The GNU Manifesto
E.1.1 What's GNU? Gnu's Not Unix!
E.1.2 Why I Must Write GNU
E.1.3 Why GNU Will Be Compatible with Unix
E.1.4 How GNU Will Be Available
E.1.5 Why Many Other Programmers Want to Help
E.1.6 How You Can Contribute
E.1.7 Why All Computer Users Will Benefit
E.1.8 Some Easily Rebutted Objections to GNU's Goals
E.2 Funding Free Software
F. GPC indeks
This document was generated by
Frank Heckenbach
on
May, 10 2002
using
texi2html