 
Directory c:\TZ has been used for getting directory lists and
compilation output lists , used for editing .
 
The initial files are the following :
 
-----------------------------------------------------------
 
 File Name : \TZ\Dir-List-TS-1.TXT
 
 Volume in drive C has no label.
 Volume Serial Number is 6CC1-77E2
 
 Directory of C:\ts
 
12/12/2009  01:32 AM    <DIR>          .
12/12/2009  01:32 AM    <DIR>          ..
12/12/2009  03:01 AM    <DIR>          Source
12/12/2009  03:01 AM    <DIR>          Typing
12/12/2009  03:01 AM    <DIR>          Units
               0 File(s)              0 bytes
 
 Directory of C:\ts\Source
 
12/12/2009  03:01 AM    <DIR>          .
12/12/2009  03:01 AM    <DIR>          ..
12/12/2009  02:56 AM               355 PROCPART.PAS
               1 File(s)            355 bytes
 
 Directory of C:\ts\Typing
 
12/12/2009  03:01 AM    <DIR>          .
12/12/2009  03:01 AM    <DIR>          ..
12/12/2009  02:56 AM               217 A-RECORD-TYPE.PAS
               1 File(s)            217 bytes
 
 Directory of C:\ts\Units
 
12/12/2009  03:01 AM    <DIR>          .
12/12/2009  03:01 AM    <DIR>          ..
12/12/2009  02:30 AM               199 PROCUNIT.PAS
12/12/2009  02:31 AM               148 TYPEUNIT.PAS
               2 File(s)            347 bytes
 
     Total Files Listed:
               4 File(s)            919 bytes
              11 Dir(s)  13,850,845,184 bytes free
 
-----------------------------------------------------------
 
  File Name : \TZ\Dir-List-TW-1.TXT
 
 Volume in drive C has no label.
 Volume Serial Number is 6CC1-77E2
 
 Directory of C:\tw
 
12/12/2009  01:09 AM    <DIR>          .
12/12/2009  01:09 AM    <DIR>          ..
12/12/2009  03:01 AM    <DIR>          Progs
               0 File(s)              0 bytes
 
 Directory of C:\tw\Progs
 
12/12/2009  03:01 AM    <DIR>          .
12/12/2009  03:01 AM    <DIR>          ..
12/12/2009  02:54 AM             6,463 FPC.CFG
12/12/2009  02:31 AM               152 TEST-RECORD-TYPE.PAS
12/12/2009  12:51 AM                48 X-FPC.BAT
               3 File(s)          6,663 bytes
 
     Total Files Listed:
               3 File(s)          6,663 bytes
               5 Dir(s)  13,850,845,184 bytes free
 
-----------------------------------------------------------
 
{ File Name : \TS\Typing\A-Record-Type.PAS }
 
Type Values = record
              A : Integer ;
              B : Real ;
{
              X : Integer ;
              Y : Boolean ;
}
              End ;
 
-----------------------------------------------------------
 
{ File Name : \TS\Source\ProcPart.PAS }
 
Procedure Assign_a_Value ;
 
Var V : TypeUnit . Values ;
 
Begin
 
V . A := 1 ;
V . B := 1.0 ;
 
{
V . X := 5 ;
V . Y := True ;
}
 
 Writeln ( 'V . A = ' , V . A ) ;
 Writeln ( 'V . B = ' , V . B ) ;
 
{
 Writeln ( 'V . X = ' , V . X ) ;
 Writeln ( 'V . Y = ' , V . Y ) ;
}
 
End ;
 
-----------------------------------------------------------
 
{ File Name : \TS\Units\ProcUnit.PAS }
 
Unit ProcUnit ;
 
Interface
 
Uses
    TypeUnit ;
 
Procedure Assign_a_Value ;
 
Implementation
 
{$I \TS\Source\ProcPart.PAS }
 
End .
 
-----------------------------------------------------------
 
{ File Name : \TS\Units\TypeUnit.PAS }
 
Unit TypeUnit ;
 
Interface
 
{$I \TS\Typing\A-Record-Type.PAS }
 
Implementation
 
End .
 
-----------------------------------------------------------
 
{ File Name : \TW\Progs\Test-Record-Type.PAS }
 
Program Test_Record_Type ;
 
Uses
    ProcUnit ;
 
Begin
 
 Assign_a_Value ;
 
End .
 
-----------------------------------------------------------
 
# { File Name : \TW\Progs\FPC.CFG }
 
#
# Config file generated by fpcmkcfg on 5/16/2009 - 18:35:37
# Example fpc.cfg for Free Pascal Compiler
#
 
# ----------------------
# Defines (preprocessor)
# ----------------------
 
#
# nested #IFNDEF, #IFDEF, #ENDIF, #ELSE, #DEFINE, #UNDEF are allowed
#
# -d is the same as #DEFINE
# -u is the same as #UNDEF
#
 
#
# Some examples (for switches see below, and the -? helppages)
#
# Try compiling with the -dRELEASE or -dDEBUG on the commandline
#
 
 -dRELEASE
 
# For a release compile with optimizes and strip debuginfo
#IFDEF RELEASE
  -O2
  -Xs
  #WRITE Compiling Release Version
#ENDIF
 
# For a debug version compile with debuginfo and all codegeneration checks on
#IFDEF DEBUG
  -glh
  -Crtoi
  #WRITE Compiling Debug Version
#ENDIF
 
# ----------------
# Parsing switches
# ----------------
 
# Pascal language mode
#      -Mfpc      free pascal dialect (default)
#      -Mobjfpc   switch some Delphi 2 extensions on
#      -Mdelphi   tries to be Delphi compatible
#      -Mtp       tries to be TP/BP 7.0 compatible
#      -Mgpc      tries to be gpc compatible
#      -Mmacpas   tries to be compatible to the macintosh pascal dialects
#
# Turn on Object Pascal extensions by default
#-Mobjfpc
 
 -Mdelphi
 
# Assembler reader mode
#      -Rdefault  use default assembler
#      -Ratt      read AT&T style assembler
#      -Rintel    read Intel style assembler
#
# All assembler blocks are AT&T styled by default
#-Ratt
 
# Semantic checking
#      -S2        same as -Mobjfpc
#      -Sc        supports operators like C (*=,+=,/= and -=)
#      -Sa        include assertion code.
#      -Sd        same as -Mdelphi
#      -Se<x>     compiler stops after the <x> errors (default is 1)
#      -Sg        allow LABEL and GOTO
#      -Sh        Use ansistrings
#      -Si        support C++ styled INLINE
#      -SI<x>     set interface style to <x>
#         -SIcomCOM compatible interface (default)
#         -SIcorbaCORBA compatible interface
#      -Sm        support macros like C (global)
#      -So        same as -Mtp
#      -Sp        same as -Mgpc
#      -Ss        constructor name must be init (destructor must be done)
#      -St        allow static keyword in objects
#
# Allow goto, inline, C-operators, C-vars
-Sgic
 
# ---------------
# Code generation
# ---------------
 
# Uncomment the next line if you always want static/dynamic units by default
# (can be overruled with -CD, -CS at the commandline)
#-CS
#-CD
 
# Set the default heapsize to 8Mb
#-Ch8000000
 
# Set default codegeneration checks (iocheck, overflow, range, stack)
#-Ci
#-Co
#-Cr
#-Ct
 
# Optimizer switches for i386 compiler
# -Os        generate smaller code
# -O1        level 1 optimizations (quick optimizations)
# -O2        level 2 optimizations (-O1 + slower optimizations)
# -O3        level 3 optimizations (same as -O2u)
# -Oa=N      set alignment to N
# -OoX       switch on optimalization X.
# -OoNOX     switch off optimalization X.
#               X is one of REGVAR UNCERTAIN STACKFRAME PEEPHOLE ASMCSE LOOPUNROLL
# -OpCPU     set target processor.
#             CPU is one of 386, PENTIUM, PENTIUM2, PENTIUM3, PENTIUM4, PENTIUMM
 
# -----------------------
# Set Filenames and Paths
# -----------------------
 
# Both slashes and backslashes are allowed in paths
 
# path to the messagefile, not necessary anymore but can be used to override
# the default language
#-Frc:\lazarus\fpc\2.2.4/msg/errore.msg
#-Frc:\lazarus\fpc\2.2.4/msg/errorn.msg
#-Frc:\lazarus\fpc\2.2.4/msg/errores.msg
3
#-Frc:\lazarus\fpc\2.2.4/msg/errord.msg
#-Frc:\lazarus\fpc\2.2.4/msg/errorr.msg
 
# path to the gcclib
#-Flc:\lazarus\fpc\2.2.4/lib
 
# searchpath for includefiles
#-Fi/pp/inc;/pp/rtl/inc
 
# searchpath for includefiles
# release them only if you know what you do
# because this could cause a rebuild of the runtime library
# if you tell them compiler/ide to build the project (FK)
#-Fic:\lazarus\fpc\2.2.4/source/rtl/inc;c:\lazarus\fpc\2.2.4/source/rtl/i386
 
# searchpath for objectfiles
#-Foc:\lazarus\fpc\2.2.4/source/rtl/inc;c:\lazarus\fpc\2.2.4/source/rtl/i386
 
#IFDEF FPCAPACHE_1_13
-Fuc:\lazarus\fpc\2.2.4/units/$FPCTARGET/httpd-1.3/
#ELSE
#IFDEF FPCAPACHE_2_0
-Fuc:\lazarus\fpc\2.2.4/units/$FPCTARGET/httpd-2.0
#ELSE
-Fuc:\lazarus\fpc\2.2.4/units/$FPCTARGET/httpd-2.2
#ENDIF
#ENDIF
 
# searchpath for units and other system dependent things
-Fuc:\lazarus\fpc\2.2.4/units/$FPCTARGET/
-Fuc:\lazarus\fpc\2.2.4/units/$FPCTARGET/*
-Fuc:\lazarus\fpc\2.2.4/units/$FPCTARGET/rtl
 
# searchpath for libraries
#-Flc:\lazarus\fpc\2.2.4/lib
#-Fl/lib;/usr/lib
 
# searchpath for tools
-FDc:\lazarus\fpc\2.2.4/bin/$FPCTARGET
 
# binutils prefix for cross compiling
#IFDEF FPC_CROSSCOMPILING
  -XP$FPCTARGET-
#ENDIF
 
# -------------
# Linking
# -------------
 
# generate always debugging information for GDB (slows down the compiling
# process)
#      -gc        generate checks for pointers
#      -gd        use dbx
#      -gg        use gsym
#      -gh        use heap trace unit (for memory leak debugging)
#      -gl        use line info unit to show more info for backtraces
#      -gv        generates programs tracable with valgrind
#      -gw        generate dwarf debugging info
#
# Enable debuginfo and use the line info unit by default
#-gl
 
# always pass an option to the linker
#-k-s
 
# Always strip debuginfo from the executable
-Xs
 
# -------------
# Miscellaneous
# -------------
 
# Write always a nice FPC logo ;)
-l
 
# Verbosity
#      e : Show errors (default)       d : Show debug info
#      w : Show warnings               u : Show unit info
#      n : Show notes                  t : Show tried/used files
#      h : Show hints                  m : Show defined macros
#      i : Show general info           p : Show compiled procedures
#      l : Show linenumbers            c : Show conditionals
#      a : Show everything             0 : Show nothing (except errors)
#      b : Show all procedure          r : Rhide/GCC compatibility mode
#          declarations if an error    x : Executable info (Win32 only)
#          occurs
#
# Display Info, Warnings, Notes and Hints
 
-viwn
 
# If you don't want so much verbosity use
#-vw
 
 -FiC:\TS\Source\
 
 -FuC:\TS\Units\
 
-----------------------------------------------------------
 
Compilation Batch File : X-FPC.BAT :
 
\lazarus\fpc\2.2.4\bin\i386-win32\fpc.exe %1
 
used as
 
X-FPC Test-Record-Type.PAS > \TZ\Test-Output-1.TXT
 
-----------------------------------------------------------
 
 File Name : \TZ\Test-Output-1.TXT
 
C:\TW\Progs>\lazarus\fpc\2.2.4\bin\i386-win32\fpc.exe Test-Record-Type.PAS
Compiling Release Version
Free Pascal Compiler version 2.2.4 [2009/04/26] for i386
Copyright (c) 1993-2008 by Florian Klaempfl
Target OS: Win32 for i386
Compiling Test-Record-Type.PAS
Compiling C:\TS\Units\PROCUNIT.PAS
Compiling C:\TS\Units\TYPEUNIT.PAS
Linking Test-Record-Type.exe
84 lines compiled, 0.1 sec , 28624 bytes code, 1528 bytes data
 
-----------------------------------------------------------
 
Compilation Batch File : X-FPC.BAT
used as :
 
X-FPC Test-Record-Type.PAS > \TZ\Test-Output-2.TXT
 
-----------------------------------------------------------
 
 File Name : \TZ\Test-Output-2.TXT
 
C:\TW\Progs>\lazarus\fpc\2.2.4\bin\i386-win32\fpc.exe Test-Record-Type.PAS
Compiling Release Version
Free Pascal Compiler version 2.2.4 [2009/04/26] for i386
Copyright (c) 1993-2008 by Florian Klaempfl
Target OS: Win32 for i386
Compiling Test-Record-Type.PAS
Linking Test-Record-Type.exe
14 lines compiled, 0.1 sec , 28624 bytes code, 1528 bytes data
 
-----------------------------------------------------------
 
The following file edited as follows :
 
{ File Name : \TS\Typing\A-Record-Type.PAS }
 
Type Values = record
              A : Integer ;
              B : Real ;
 
              X : Integer ;
              Y : Boolean ;
 
              End ;
 
-----------------------------------------------------------
 
The following file edited as follows :
 
{ File Name : \TS\Source\ProcPart.PAS }
 
Procedure Assign_a_Value ;
 
Var V : TypeUnit . Values ;
 
Begin
 
V . A := 1 ;
V . B := 1.0 ;
 
V . X := 5 ;
V . Y := True ;
 
 Writeln ( 'V . A = ' , V . A ) ;
 Writeln ( 'V . B = ' , V . B ) ;
 
{
 Writeln ( 'V . X = ' , V . X ) ;
 Writeln ( 'V . Y = ' , V . Y ) ;
}
 
End ;
 
-----------------------------------------------------------
 
 File Name : \TZ\Dir-List-TS-2.TXT
 
 Volume in drive C has no label.
 Volume Serial Number is 6CC1-77E2
 
 Directory of C:\ts
 
12/12/2009  01:32 AM    <DIR>          .
12/12/2009  01:32 AM    <DIR>          ..
12/12/2009  03:22 AM    <DIR>          Source
12/12/2009  03:21 AM    <DIR>          Typing
12/12/2009  03:13 AM    <DIR>          Units
               0 File(s)              0 bytes
 
 Directory of C:\ts\Source
 
12/12/2009  03:22 AM    <DIR>          .
12/12/2009  03:22 AM    <DIR>          ..
12/12/2009  02:56 AM               355 PROCPART.BAK
12/12/2009  03:22 AM               349 PROCPART.PAS
               2 File(s)            704 bytes
 
 Directory of C:\ts\Typing
 
12/12/2009  03:21 AM    <DIR>          .
12/12/2009  03:21 AM    <DIR>          ..
12/12/2009  02:56 AM               217 A-RECORD-TYPE.BAK
12/12/2009  03:21 AM               217 A-RECORD-TYPE.PAS
               2 File(s)            434 bytes
 
 Directory of C:\ts\Units
 
12/12/2009  03:13 AM    <DIR>          .
12/12/2009  03:13 AM    <DIR>          ..
12/12/2009  03:13 AM             1,561 PROCUNIT.o
12/12/2009  02:30 AM               199 PROCUNIT.PAS
12/12/2009  03:13 AM               878 PROCUNIT.ppu
12/12/2009  03:13 AM               982 TYPEUNIT.o
12/12/2009  02:31 AM               148 TYPEUNIT.PAS
12/12/2009  03:13 AM               788 TYPEUNIT.ppu
               6 File(s)          4,556 bytes
 
     Total Files Listed:
              10 File(s)          5,694 bytes
              11 Dir(s)  13,750,067,200 bytes free
 
-----------------------------------------------------------
 
 File Name : \TZ\Dir-List-TW-2.TXT
 
 Volume in drive C has no label.
 Volume Serial Number is 6CC1-77E2
 
 Directory of C:\tw
 
12/12/2009  01:09 AM    <DIR>          .
12/12/2009  01:09 AM    <DIR>          ..
12/12/2009  03:13 AM    <DIR>          Progs
               0 File(s)              0 bytes
 
 Directory of C:\tw\Progs
 
12/12/2009  03:13 AM    <DIR>          .
12/12/2009  03:13 AM    <DIR>          ..
12/12/2009  02:54 AM             6,463 FPC.CFG
12/12/2009  03:19 AM            32,832 Test-Record-Type.exe
12/12/2009  03:19 AM             2,273 Test-Record-Type.o
12/12/2009  02:31 AM               152 TEST-RECORD-TYPE.PAS
12/12/2009  12:51 AM                48 X-FPC.BAT
               5 File(s)         41,768 bytes
 
     Total Files Listed:
               5 File(s)         41,768 bytes
               5 Dir(s)  13,750,067,200 bytes free
 
-----------------------------------------------------------
 
Compilation Batch File : X-FPC.BAT
used as :
 
X-FPC Test-Record-Type.PAS > \TZ\Test-Output-3.TXT
 
-----------------------------------------------------------
 
 File Name : \TZ\Test-Output-3.TXT
 
C:\TW\Progs>\lazarus\fpc\2.2.4\bin\i386-win32\fpc.exe Test-Record-Type.PAS
Compiling Release Version
Free Pascal Compiler version 2.2.4 [2009/04/26] for i386
Copyright (c) 1993-2008 by Florian Klaempfl
Target OS: Win32 for i386
Compiling Test-Record-Type.PAS
Compiling C:\TS\Units\PROCUNIT.PAS
PROCPART.PAS(13,5) Error: Unknown record field identifier "X"
PROCPART.PAS(14,5) Error: Unknown record field identifier "Y"
PROCUNIT.PAS(19) Fatal: There were 2 errors compiling module, stopping
Fatal: Compilation aborted
Error: C:\lazarus\fpc\2.2.4\bin\i386-win32\ppc386.exe returned an error exitcode (normal if you did not specify a source file to be compiled)
 
-----------------------------------------------------------
 
