peter
95879fe8a7
* basic support for generic classes
...
git-svn-id: trunk@2020 -
2005-12-21 10:11:15 +00:00
Jonas Maebe
ef2a0c7ddf
* changed default packenum for MacPas from 1 to 2 (compatible with Metrowerks)
...
git-svn-id: trunk@1971 -
2005-12-16 12:22:39 +00:00
florian
d6628f1d8b
* resolve postponed local switch changes before switching mode
...
git-svn-id: trunk@1880 -
2005-12-04 19:36:57 +00:00
peter
539b7dc220
* setting the compile mode should set the preprocessor symbol directly
...
git-svn-id: trunk@1457 -
2005-10-18 06:57:39 +00:00
olle
e40c2fd8b0
+ compile time expression type checking
...
* fixed bug in $DEFINE under macpas
git-svn-id: trunk@919 -
2005-08-22 19:09:41 +00:00
marco
a234180e3a
* patch for 4095
...
git-svn-id: trunk@895 -
2005-08-16 12:13:28 +00:00
peter
3051c91530
* fix max macro length check
...
git-svn-id: trunk@650 -
2005-07-18 13:15:26 +00:00
olle
b53bd80bf4
* Fixed bug introduced in r581. Did also some refactoring.
...
git-svn-id: trunk@603 -
2005-07-09 20:21:36 +00:00
peter
4222e24422
* fix preprocessor support for empty set constants
...
git-svn-id: trunk@584 -
2005-07-05 06:11:20 +00:00
olle
4f54b92312
* fix so that outdeffed directives are not parsed (only nestlevels is accounted for)
...
git-svn-id: trunk@581 -
2005-07-04 18:40:48 +00:00
florian
cefa8ce9b9
* utf-8 fix from Rimgaudas Laucius
...
git-svn-id: trunk@556 -
2005-07-02 12:03:47 +00:00
peter
408bba521a
* support constset in $if
...
git-svn-id: trunk@538 -
2005-06-30 08:19:01 +00:00
peter
8e29f17019
* keyword check patch from Gerhard Scholz
...
git-svn-id: trunk@530 -
2005-06-29 15:09:28 +00:00
florian
ec6d5ff211
+ utf-8 support for string constants added
...
git-svn-id: trunk@428 -
2005-06-16 20:16:37 +00:00
fpc
790a4fe2d3
* log and id tags removed
...
git-svn-id: trunk@42 -
2005-05-21 09:42:41 +00:00
fpc
50778076c3
initial import
...
git-svn-id: trunk@1 -
2005-05-16 18:37:41 +00:00
florian
83ac6eeaad
* 32 -> 64 bit cross compilation fixed
2005-05-06 17:02:52 +00:00
michael
03e265c4b2
+ Patch from Christian Iversen to fix defined() macro command
2005-05-02 18:44:00 +00:00
olle
afdcfb08ce
* Disabled warning for undefined compile time var in mode macpas, since it did not work.
2005-03-28 21:34:36 +00:00
olle
878c56bad6
* Cleaned up handling of source file extension.
...
+ Added support for .p extension for macos and darwin
2005-03-20 22:36:45 +00:00
olle
7cb6368f12
* Support for pascal constant expr in compile time expr, is now only allowed in mode Delphi
...
+ Warning for undefined compile time var in mode macpas
* Support for some turbo directives in mode macpas
* Support for Metrowerks style DEFINED xxx
2005-03-20 18:13:34 +00:00
peter
fe9bf2081d
Support constants and IN operator in preprocessor patch by Christian Iversen
2005-02-27 17:15:01 +00:00
peter
e417e34496
* truncate log
2005-02-14 17:13:06 +00:00
peter
79c20ebf7d
* use val() for decoding integers
2005-01-20 17:05:53 +00:00
olle
7572f3a539
* rework of macro subsystem
...
+ exportable macros for mode macpas
2005-01-09 20:24:43 +00:00
peter
b537382710
* give error when reading identifier > 255 chars
2005-01-04 16:34:03 +00:00
peter
6458bd0ce1
* tvarsym splitted
2004-11-08 22:09:58 +00:00
peter
c95a859f0a
* generic tlocation
...
* move tlocation to cgutils
2004-10-31 21:45:02 +00:00
peter
bc59556a41
* $fpctarget expands to <cpu>-<os>
...
* allow * in middle of the path to support ../*/units/$fpctarget
2004-10-31 18:54:24 +00:00
peter
e7459f5466
* heap and heapsize removed
...
* checkpointer fixes
2004-10-25 15:38:41 +00:00
mazen
581b52422c
- remove $IFDEF DELPHI and related code
...
- remove $IFDEF FPCPROCVAR and related code
2004-10-15 09:14:16 +00:00
olle
45e4998167
* Exchanged hardcoded "./" to CurDirRelPath
2004-10-09 11:29:15 +00:00
mazen
83cb4fe087
* revert last change : removal of dos unit
2004-09-29 06:52:43 +00:00
mazen
880427b9aa
- remove Dos unit dependency
2004-09-28 16:00:52 +00:00
olle
bb684d007d
* Minor bugfix in $IFOPT
2004-09-12 20:46:58 +00:00
olle
df2d2a847c
+ added flag to TMacro denoting mac style compiler variable
...
* fixed $DEFINEC
* improved robustness of macro facility
2004-08-22 23:16:06 +00:00
olle
6ad2b42765
+ added DEFINEC for mode macpas, is equivalent to DEFINE
...
* fixed bug when macro without value is used in a compile time expr.
2004-08-22 10:50:19 +00:00
florian
a47844c817
* sizeof in the preprocessor handles types now as well
2004-08-02 20:45:40 +00:00
michael
f897872df2
+ Patch from Christian Iversen to implement LIBPREFIX/SUFFIX/EXTENSION directives
2004-08-02 07:15:54 +00:00
olle
17cab34c49
+ Added compile time function OPTION(x) for MacPas
...
* Saved file as text and not binary (I hope)
2004-07-23 00:25:05 +00:00
olle
5843170183
+ Added compile time function OPTION(x) for MacPas
2004-07-22 11:58:51 +00:00
olle
98df0978e1
+ adding operators "|" and "&" for macpas
2004-07-05 23:25:34 +00:00
florian
8a9758c5e2
* logs truncated
2004-06-20 08:55:28 +00:00
peter
fed62c2f70
* Patch from Christian Iversen to support sizeof() in preprocessor
2004-05-23 20:55:38 +00:00
peter
06448271ff
* $message directive compatible with delphi
2004-05-19 23:29:56 +00:00
peter
fa1a8cbf17
* report about illegal chars in preproctoken instead of end of
...
expression
* support realnumbers in preproctoken parser
2004-05-16 13:55:26 +00:00
olle
758c940518
+ added language constructs UNIV, C, ... for mode mac
...
* consolidated macro expression to conform to Pascal
* macro true is defined as <> 0
2004-05-03 10:06:38 +00:00
peter
4b3db6acb4
* $elseif support
...
* conditiotnal in // returns warning isntead of error
2004-03-04 17:23:10 +00:00
peter
1dd1cfe20a
* more fixes for skipuntildirective
2004-02-29 13:28:57 +00:00
michael
3399057a27
+ Patch from peter to fix webtb[fs]/tw2853*.pp
2004-02-27 11:50:13 +00:00
peter
25213e4efb
* resursive macro's fixed in preprocessor
2004-02-26 16:15:45 +00:00
olle
51c1526296
+ mode mac: preproc support for hexadecimal numbers
...
+ mode mac: preproc support for TRUE, FALSE
2004-02-25 00:54:47 +00:00
olle
ff2c436b78
+ mode mac: added UNDEFINED construct
...
+ mode mac: added support for include $I
* renamed one of the readpreproc to preproc_substitutedtoken to avoid confusement
2004-02-23 23:38:25 +00:00
daniel
d47da881ed
* Better fix for case sensitive macro handling
2004-02-11 14:46:59 +00:00
daniel
ed76d1e17d
* Compiler was partially case sensitive in macro expansion
...
* Multiple and/or preprocessor statements caused problems
2004-02-11 14:13:10 +00:00
daniel
46d241a666
* Take advantage of our new with statement optimization
2004-02-07 23:28:34 +00:00
peter
2ebd9f20b5
* do nothing for macro's in tempcloseinput,tempopeninput
2003-11-12 16:57:59 +00:00
peter
0df248389d
+ $IF DECLARED() added
2003-11-10 19:08:59 +00:00
peter
517c5de6aa
* line numbering is now only done when #10 , #10#13 is really parsed
...
instead of when it is the next character
2003-11-10 19:08:32 +00:00
peter
526cffbaad
* set ms_compiled after the program/unit is parsed
...
* check for ms_compiled before checking preproc matches
2003-10-29 21:02:51 +00:00
olle
6f78eac09f
+ support for a different set of compiler directives under $MODE MAC
...
+ added mac directives $SETC $IFC $ELSEC $ENDC
2003-09-17 22:30:19 +00:00
florian
220e05dd5e
* fixed arm concatcopy
...
+ arm support in the common compiler sources added
* moved some generic cg code around
+ tfputype added
* ...
2003-09-03 11:18:36 +00:00
peter
6731abb0db
* fixed some reported bugs
2003-08-10 17:25:23 +00:00
peter
1b72901b14
* recursive include depth check
2003-05-25 10:26:43 +00:00
peter
2b888374ce
* don't close inputfile when still closed
2003-04-26 00:30:27 +00:00
peter
2721d341f0
* merged some verbosity options.
...
* V_LineInfo is a verbosity flag to include line info
2003-01-09 21:52:37 +00:00
peter
bbf8bddbb4
* unit loading changed to first register units and load them
...
afterwards. This is needed to support uses xxx in yyy correctly
* unit dependency check fixed
2002-12-29 14:57:50 +00:00
peter
1ae6696e1b
* use gettoken to get filename for include
2002-12-27 18:05:58 +00:00
peter
7e58010fa1
* fix delphi comment parsing when skipping preproc directive
2002-12-27 16:45:50 +00:00
peter
0d2c1bfd3c
* give an error when no symbol is specified after $if(n)def
2002-12-27 15:26:43 +00:00
peter
9394913716
* support quotes around include filenames
2002-12-24 23:32:02 +00:00
carl
e992fd20ab
* remove a stupid thing that i commited
2002-12-05 19:27:00 +00:00
carl
5c5db0e0a3
+ unimplemented hint directive added
...
* hint directive parsing implemented
* warning on these directives
2002-11-29 22:31:19 +00:00
peter
6c097b4546
* fix macro nesting check
2002-11-26 22:56:40 +00:00
peter
a431bf27a0
* parse ^ after nil as caret
2002-09-16 19:05:48 +00:00
carl
a013d19c36
* bugfix of bug report 2072 (merged)
2002-09-06 14:58:42 +00:00
peter
37bb42694b
* fixed crash when current_module becomes nil
2002-09-05 19:27:05 +00:00
pierre
0aceb4b76b
* fix for bug #2004 merged
2002-09-05 14:17:27 +00:00
peter
724ece4715
* tscannerfile is now destroyed in tmodule.reset and current_scanner
...
is updated accordingly. This removes all the loading and saving of
the old scanner and the invalid flag marking
2002-08-12 16:46:04 +00:00
peter
fb64d51f69
* TScannerFile.SetInvalid added that will also reset inputfile
2002-08-11 14:28:19 +00:00
carl
18b102ce95
+ moved target_cpu_string to cpuinfo
...
* renamed asmmode enum.
* assembler reader has now less ifdef's
* move from nppcmem.pas -> ncgmem.pas vec. node.
2002-08-10 14:46:29 +00:00
florian
2b3a8dccf8
+ support for octal constants, they are specified by a leading &
2002-08-06 21:12:16 +00:00
florian
64b27c2ca1
+ char constants specified with #.. with more than 3 digits are handled as widechar
2002-07-20 17:35:52 +00:00
peter
06ebac4e27
* readded missing revisions
2002-05-18 13:34:04 +00:00
carl
21b3a10f02
+ defines.inc -> fpcdefs.inc to avoid conflicts if compiling by hand
...
+ try to fix temp allocation (still in ifdef)
+ generic constructor calls
+ start of tassembler / tmodulebase class cleanup
2002-05-16 19:46:34 +00:00
peter
2992e1819c
* removed old logs and updated copyright year
2002-05-14 19:34:38 +00:00
peter
5ea6f2b824
* fixed memleaks when file can't be opened
2002-04-21 18:57:23 +00:00
carl
572b87cade
* first check .inc file extension
2002-04-21 15:22:26 +00:00
carl
1f52a0cbe7
- remove my fixes until Peter agrees on the fix (sorry Peter)
2002-04-21 07:24:09 +00:00
carl
87aa88e9b7
+ generic FPC_CHECKPOINTER
...
+ first parameter offset in stack now portable
* rename some constants
+ move some cpu stuff to other units
- remove unused constents
* fix stacksize for some targets
* fix generic size problems which depend now on EXTEND_SIZE constant
2002-04-20 21:32:23 +00:00
peter
17cd547898
* default extension checking for include files
2002-04-19 15:42:11 +00:00
peter
b5936b1588
* fixed // and (* parsing to not be done when already parsing a
...
tp comment in skipuntildirective
2002-03-01 14:39:44 +00:00
peter
cb16c423fe
* support // parsing in skipuntildirective
2002-03-01 12:39:26 +00:00
peter
09fb8a2649
* FPCTARGETOS/FPCTARGETCPU added as internal environment variable
2002-01-27 21:44:26 +00:00
peter
fd2ad837e2
* implicit result variable generation for assembler routines
...
* removed m_tp modeswitch, use m_tp7 or not(m_fpc) instead
2002-01-24 18:25:48 +00:00
peter
19e7ae8851
* fixed previous commit
2001-10-22 20:25:49 +00:00
peter
5f98096685
* give error with string constants longer than 255 chars, this is
...
compatible with kylix
2001-10-22 19:55:44 +00:00
florian
451ca157c4
* several widechar fixes, case works now
2001-10-17 22:41:04 +00:00
peter
5beb1658ce
* fix bug #1634 (merged)
2001-10-12 16:02:34 +00:00
peter
0d27041955
* merged delphi comment fix
2001-09-30 21:23:59 +00:00
michael
f959a590fe
* Fixes win32 linking problems with import libraries
...
* LINKLIB Libraries are now looked for using C file extensions
* get_exepath fix
2001-09-18 11:30:47 +00:00
peter
c4b84ce276
* m68k updates from v10 merged
2001-07-30 20:59:27 +00:00
peter
efa2d5f05e
* merged fixed relative path fix
2001-07-15 11:56:21 +00:00
peter
ca8d604964
* various widestring updates, it works now mostly without charset
...
mapping supported
2001-07-08 21:00:14 +00:00
peter
f86ce17588
+ hint directive parsing support
2001-06-03 21:57:35 +00:00
florian
fb40dcd0bb
+ some widestring stuff added
2001-05-27 14:30:55 +00:00
peter
bd25c6f88e
* fixed comment after comment parsing in assembler blocks
2001-04-13 22:12:34 +00:00
peter
316523ca15
* easier registration of directives
2001-04-13 18:00:36 +00:00
peter
a7cf57524e
* symtable change to classes
...
* range check generation and errors fixed, make cycle DEBUG=1 works
* memory leaks fixed
2001-04-13 01:22:06 +00:00
peter
32b9cdb7cf
+ new tlinkedlist class (merge of old tstringqueue,tcontainer and
...
tlinkedlist objects)
2000-12-25 00:07:25 +00:00
peter
377e4c5927
* moved preprocessfile into a conditional
2000-12-24 12:24:38 +00:00
peter
4c212d76d8
* fixed skipuntildirective
2000-12-18 17:59:01 +00:00
peter
21486921af
* fixed parsing of strings and comments in skipuntildirective
2000-12-16 15:36:02 +00:00
peter
bbe34f11f1
* merged fix for bug #1229
2000-11-30 20:27:51 +00:00
florian
b9796f6a7f
* unused units removed from uses clause
...
* some changes for widestrings
2000-11-29 00:30:30 +00:00
peter
451723647e
* symtable splitted, no real code changes
2000-10-31 22:02:46 +00:00
peter
a71e44ac49
* use defines.inc
2000-09-24 15:06:10 +00:00
peter
4c94659743
* moved some util functions from globals,cobjects to cutils
...
* splitted files into finput,fmodule
2000-08-27 16:11:48 +00:00
peter
fac523d7f6
* IDE patch for stream reading (merged)
2000-08-12 15:30:44 +00:00
peter
43f82ba0ff
* memdebug/memory patches (merged)
...
* only once illegal directive (merged)
2000-08-08 19:28:57 +00:00
michael
650fbb86aa
+ removed logs
2000-07-13 11:32:24 +00:00
michael
e7aca136a1
+ Initial import
2000-07-13 06:29:38 +00:00
peter
289e5d6567
* undid my previous commit, because it breaks some code
2000-07-08 18:03:11 +00:00
peter
e2c8882843
* also support string parsing in skipuntildirective for fpc modes
2000-07-08 16:22:30 +00:00
peter
957d4cdc89
* new message files layout with msg numbers (but still no code to
...
show the number on the screen)
2000-06-30 20:23:33 +00:00
peter
2b1d92cb5c
* no binary value reading with % if not fpc mode
...
* extended illegal char message with the char itself (Delphi like)
2000-06-18 18:05:54 +00:00
peter
b427a13613
* fixed parsing of $if preproc function
2000-06-09 21:35:37 +00:00
pierre
eb59e0b11c
* fix for tests/test/testrang.pp bug
2000-05-03 14:36:57 +00:00
michael
10b7a3ccbe
* Fixed bug in readcomment that was dropping * characters
2000-04-08 20:18:53 +00:00
peter
9f1695f700
* ^m support also after a string
2000-03-13 21:21:57 +00:00
florian
60058ae960
* very small change to scanner ...
2000-03-12 17:53:16 +00:00
pierre
35d59eeb52
Use $GOTO ON
2000-02-29 23:59:47 +00:00
daniel
fb1a842118
* Current work of symtable integration committed. The symtable can be
...
activated by defining 'newst', but doesn't compile yet. Changes in type
checking and oop are completed. What is left is to write a new
symtablestack and adapt the parser to use it.
2000-02-28 17:23:56 +00:00
peter
4a4a24b6e8
* log truncated
2000-02-09 13:22:42 +00:00
peter
706e0c4417
* fixed filepos when eof is read, it'll now stay on the eof position
2000-01-30 19:28:25 +00:00
peter
e525797c51
* updated copyright to 2000
2000-01-07 01:14:18 +00:00
peter
c5410eee5c
* preprocessor support. But it fails on the caret in type blocks
1999-12-02 17:34:34 +00:00
pierre
94f418dc11
+ one field added for ttoken record for operator
...
linking the id to the corresponding operator token that
can now now all be overloaded
* overloaded operators are resetted to nil in InitSymtable
(bug when trying to compile a uint that overloads operators twice)
1999-11-15 17:52:59 +00:00
peter
0887060ff2
* truncated log to 20 revs
1999-11-06 14:34:16 +00:00
peter
c60316b0d3
* fixed comment level counting after directive
1999-11-03 23:44:28 +00:00
peter
be22c241fb
* fixed oldtp comment parsing
1999-11-02 15:05:08 +00:00
peter
0e7c4919c8
* fixed line counter when the first line had #10 only. This was buggy
...
for both the main file as for include files
1999-10-30 12:32:30 +00:00
peter
eb72952214
* fixed macro within macro endless-loop
1999-09-27 23:40:10 +00:00
peter
0b396c0466
* $IFNDEF is 7 chars and not 6 chars
1999-09-03 10:02:48 +00:00
daniel
1777e0c901
* Could not compile with TP, some arrays moved to heap
...
* NOAG386BIN default for TP
* AG386* files were not compatible with TP, fixed.
1999-09-02 18:47:41 +00:00
peter
0274f3a08b
* fixed crash in psub
...
* ansistringcompare fixed
* support for #$0b8
1999-08-30 10:17:56 +00:00
michael
97393a3370
* Removed C style comments.
1999-08-06 13:11:44 +00:00
peter
cb8aeb3fd6
* V_Fatal=1, all other V_ are also increased
...
* Check for local procedure when assigning procvar
* fixed comment parsing because directives
* oldtp mode directives better supported
* added some messages to errore.msg
1999-08-05 16:52:53 +00:00
Jonas Maebe
ace7ff6983
* all tokens now start with an underscore
...
* PowerPC compiles!!
1999-08-04 13:02:40 +00:00
peter
771996a9db
* always output preprocstack when unexpected eof is found
...
* fixed tp7/delphi skipuntildirective parsing
1999-07-29 11:43:15 +00:00