paul
|
7ecaaf0ef8
compiler: further improve preprocessor evaluator:
|
12 lat temu |
paul
|
cac09f9df1
compiler: better handling of '$','%','&' in macros
|
12 lat temu |
paul
|
0eb4244a67
compiler: implement compile-time expression with float numbers (issue #0010670), better handling of integer expressions too
|
12 lat temu |
paul
|
eff0403fc1
compiler: reimplement handling of compile time variables - they are stored like tconstsym now instead of string. Expressions are evaluated more accurate now.
|
12 lat temu |
paul
|
8d526e9b07
compiler: add a check for srsym <> nil since try_consume_unitsym may change srsym to nil, better error message
|
12 lat temu |
paul
|
3f2e62874b
compiler: handle unit, namespace and class/record/object prefixes before identifiers while parsing {$IF ...} expressions (fixes mantis #0020996)
|
12 lat temu |
florian
|
0e41df598e
* merge i8086 branch by Nikolay Nikolov
|
12 lat temu |
florian
|
7ac7d8a4b6
+ define UNICODE as well as FPC_UNICODESTRINGS
|
12 lat temu |
Jonas Maebe
|
8b7071c8e8
* fixed recording generics token line info on big endian systems
|
12 lat temu |
florian
|
d4613fe961
* update init_settings.setalloc in SetCompileMode if changeinit is set
|
12 lat temu |
florian
|
20a534e63f
* fixed code which causes range check errors when compiled with -Cr
|
12 lat temu |
nickysn
|
7d212a7e79
* default to intel assembler for delphi/tp7 modes also on i8086
|
12 lat temu |
paul
|
3682fddc49
compiler: minor optimization of tscannerfile.recordtoken
|
12 lat temu |
paul
|
2a3618fb6c
compiler: set apptype using new SetAppType routine, add 'CONSOLE' define for console apptype.
|
12 lat temu |
paul
|
8db6118965
compiler: define FPC_UNICODESTRINGS when UnicodeString is a default string type (for issue #0023861)
|
12 lat temu |
svenbarth
|
d49b4043ab
Implement DECLARED() for generic symbols. This fixes Mantis #21829 . The syntax is SomeGenericType<> for a generic with only one type parameter and SomeGeneric<,[,]*> for a generic with more than one type parameter. Spaces between the commas or brackets are allowed.
|
12 lat temu |
svenbarth
|
632db2229f
Fix for Mantis #23700 .
|
12 lat temu |
svenbarth
|
b5827ce363
Move the handling of "misstyled" floating point constants like "2." or "2.e10" from the scanner to the parser. This way type helpers calls for integer constants can be parsed correctly in the future.
|
12 lat temu |
florian
|
f25f44605e
- get rid of m_all, use a set instead for tokens, this allows to disable/enable tokens depending on the language mode
|
13 lat temu |
paul
|
57da93dd11
compiler: don't reject utf-8 codepage as default althought it is not present in mapping tables
|
13 lat temu |
Jonas Maebe
|
07ebc51b6c
* always store generics token streams in little endian, so we don't have to
|
13 lat temu |
svenbarth
|
f90e686be2
Always try to present file/line information for generics even if no source is available or the unit was compiled as release unit. This allows IDE like Lazarus to correctly navigate to an error or warning even if the unit containing the generic was compiled as a release unit.
|
13 lat temu |
svenbarth
|
e0b41141d2
"SizeInt" inside the compiler references the "size of an int" on the Host platform. What we want for writing size information in PPUs for Generics is "ASizeInt" which is the "size of an int" of the target platform. This fixes Mantis #20947.
|
13 lat temu |
pierre
|
261538f9c2
Fix bug report 22265
|
13 lat temu |
pierre
|
41248ea4f7
Hopefully correct fix for ReplayToken TSettings record writes
|
13 lat temu |
pierre
|
1d4862f3c1
* Remove obsolete size check leading to failure for generics tests
|
13 lat temu |
pierre
|
d67d1abcba
* Use field by field write of current_settings for replaytoken and remove packed attribute for tsettings type
|
13 lat temu |
paul
|
d79eee8ed1
compiler: write a warning if unit should be compiled with built-in system codepage for ansistring constants but this codepage is not known by the compiler
|
13 lat temu |
Jonas Maebe
|
50d2fa7134
* after changing a modeswitch, only change related module/localswitches that
|
13 lat temu |
paul
|
aad9294c27
compiler: when explicit codepage modeswitch is installed and compiler has no codepage map for the DefaultSystemCodepage use default compiler codepage
|
13 lat temu |