Commit Graph

2334 Commits

Author SHA1 Message Date
florian
382dc3e413 o update by Sven Barth to the NativeNT RTL:
* Many more RTL units are enabled now, like SysUtils, Classes, Math, FGL, etc and Text-, File- and ConsoleIO features are enabled now as well (Threading and Processes are enabled, too, but their implementations are only stubs!). ConsoleIO isn't tested though, because the processes that are started by SMSS have their Standard Handles set to 0.

git-svn-id: trunk@16553 -
2010-12-11 20:39:05 +00:00
Jonas Maebe
deece746a3 + support for the freeglut extensions (patch by Michalis Kamburelis,
mantis #18108)

git-svn-id: trunk@16535 -
2010-12-10 15:29:19 +00:00
Jonas Maebe
9410f7d5d3 - obsolete, removed (handled by regular script)
git-svn-id: trunk@16532 -
2010-12-10 10:13:55 +00:00
sergei
5bf51c991c * VarUtils, fixed missing support for interfaces
- NoInterfaces() not used anymore, removed
+ Basic test for VariantArray of IInterface

git-svn-id: trunk@16527 -
2010-12-09 16:38:55 +00:00
Jonas Maebe
3a089cea10 * give an error when trying to let an objcclass conform to a
forward-declared objcprotocol (mantis #17341)

git-svn-id: trunk@16523 -
2010-12-08 22:17:24 +00:00
Jonas Maebe
a880603816 * updated version of the conversion script, used to generate the previously
committed cocoa unit conversions, and which can also be used to translate
    the iOS SDK 3.2 headers
  + scripts (make-cocoa-headers.sh, make-ios-headers.sh) to (re)build the
    Cocoa/iOS headers, along with skeleton directories that contain the
    necessary helper files and a few required patches
  + frameworks.xml used by the conversion script
  * updated build instructions

git-svn-id: trunk@16522 -
2010-12-08 21:12:27 +00:00
Jonas Maebe
c132727caf * updated to Mac OS X 10.6 SDK
* generated with version 2.1.2 of the conversion script, with many
    improvements (script and instructions to regenerate headers will
    be committed separately)
   o QuartzCore framework translation
   o categories are no longer merged into classes, but separate
   o corrected several C->Pascal type definitions
   o handle pointer types for parameters, return types and property types 
   o handle struct/class fields that are arrays or pointers
   o handle pointers to id
   o handle external functions that return "void *" (they were parsed as
     procedures)
   o handle anonymous classes (@class NSAnonType, such as CIImage) using
     the "NSAnonType = objcclass; external;" syntax
   o corrected handling of opaque structs
   o fixed parsing of function pointer types
   o instance-bitfields that do not appear in a struct are now recognised
   o bitpacked structs are now translated into bitpacked records (but only
     if they only contain bitpacked fields)
   o C macros indicating deprecation are now translated into "deprecated"
     modifiers for methods/variables/functions/properties
   o no longer ignore deprecated categories, because some categories are
     deprecated in Mac OS X 10.5/10.6, and we want to support writing code
     for older systems too
   o several fixes to property and enum parsing

git-svn-id: trunk@16521 -
2010-12-08 11:27:05 +00:00
marco
b1f1c026f8 * enabled cnetdb for Linux, added a demo
git-svn-id: trunk@16503 -
2010-12-04 17:18:05 +00:00
florian
34dc727f0b + test for last commit
git-svn-id: trunk@16497 -
2010-12-02 17:32:48 +00:00
paul
8b209be7e9 compiler: put static variables into unit level and not into parent class/object/record (fixes bug #0018131)
git-svn-id: trunk@16494 -
2010-12-02 05:56:13 +00:00
paul
ab4a5c74c1 compiler: allow TFoo.TBar types for object methods (bug #0018123)
git-svn-id: trunk@16493 -
2010-12-02 03:53:02 +00:00
paul
2155dadf5e compiler: push to the stack not only nested hierarchy but also class hierarchy for each nested entry both in method declaration and for method body, also push child hierarchy while parsing object members because in other case parent types are invisible for descendants (fixes mantis #0018124, mantis #0018127 and more) + extended test
git-svn-id: trunk@16491 -
2010-12-02 03:04:23 +00:00
paul
668cd1f3c0 compiler: change check for current in try_consume_unitsym - don't use current_unit in check because specialize code does not replace this variable (fixes bug #0015591)
git-svn-id: trunk@16489 -
2010-12-01 08:18:51 +00:00
paul
ba75daa50d compiler: change find_module_from_symtable to support not only unit symtables but also other symtables with valid moduleid (fixes bug #0016090)
git-svn-id: trunk@16487 -
2010-12-01 04:33:47 +00:00
paul
433f18e60c compiler: resolve only current typeblock forward declarations when the type block is finished (fixes bug #0018086)
git-svn-id: trunk@16480 -
2010-11-30 00:02:06 +00:00
florian
d99081fa47 + additional test
git-svn-id: trunk@16478 -
2010-11-29 21:18:59 +00:00
florian
f570934b45 * patch by Aleksa Todorovic to fix generic interfaces, resolves #16100
git-svn-id: trunk@16477 -
2010-11-29 21:13:09 +00:00
Jonas Maebe
5cbe12c622 * don't overwrite the target value of interlockedcompareexchange*() if the
value is different from the comparand (patch by "FVI", mantis #18082)
  * sign extend the loaded value of interlockedcompareexchange() on PowerPC64,
    because the function arguments are longints

git-svn-id: trunk@16475 -
2010-11-29 12:53:10 +00:00
florian
7d1627e9ca * patch by Aleksa Todorovic to handle access to types inside generics correctly
when they are used as class variables, resolves #18096

git-svn-id: trunk@16474 -
2010-11-29 09:37:09 +00:00
paul
0d57d38d7c compiler: fix visibility of inherited protected members (mantis #0018087) and strict private/protected members (mantis #0018085) to nested classes
git-svn-id: trunk@16473 -
2010-11-29 04:08:00 +00:00
florian
97ac6ab928 + test for #17184
git-svn-id: trunk@16470 -
2010-11-28 20:23:45 +00:00
florian
f15141a6f3 - removes 2.2.x bootstrapping stuff
git-svn-id: trunk@16465 -
2010-11-28 17:29:15 +00:00
florian
e4ecee317e * finer grained convert levels for strings, prefers widestring<->unicodestring over other conversions, resolves #18075
git-svn-id: trunk@16460 -
2010-11-28 10:05:09 +00:00
sergei
7dd93b1282 * Variant types: renamed varunicodestring to varustring and changed its value to $102 (for Delphi compatibility), introduced varUStrArg=$73, added some description comments.
* ncal.pas, translate_disp_call:
  * pass UnicodeString as varUStrArg
  * do not typecast ordinal consts to Integer, so typecasts in source (if any) are preserved.
+ test for correct passing of Dispatch method arguments, concludes work on Mantis #17904.

git-svn-id: trunk@16456 -
2010-11-27 16:17:43 +00:00
Jonas Maebe
edfb31c020 * when looking for overloaded conversion (assignment) operators, only ignore
those for variants. All defined operators are guaranteed to be valid by
    the code that checks them when they are defined (mantis #17846)

git-svn-id: trunk@16449 -
2010-11-26 15:37:31 +00:00
Jonas Maebe
11399b9b13 + test from mantis #16365, already works
git-svn-id: trunk@16447 -
2010-11-26 14:38:15 +00:00
paul
8aef216f21 compiler: allow nested objects to refence owner class in method arguments (issue #0017986)
git-svn-id: trunk@16440 -
2010-11-26 07:55:55 +00:00
paul
0c23029d8f compiler: add all nested classes to the symtable stack while parsing method header (issue #0017952)
git-svn-id: trunk@16439 -
2010-11-26 07:30:20 +00:00
florian
ef0899425b * adds assign methods to the fgl classes based on a patch by Aleksa Todorovic, resolves #10479
git-svn-id: trunk@16429 -
2010-11-25 14:12:13 +00:00
florian
d30952b408 * patch by Aleksa Todorovic which adds the ability to reference current generic class. Each reference to current generic class is "translated" to appropriate specialization of that generic class. There are two tests as part of the patch to test that it works. The patch, also, rejects declaring generic inside another generic. 0010479 is easy to implement with this patch applied, resolves #11777
git-svn-id: trunk@16423 -
2010-11-24 21:57:41 +00:00
pierre
709d36a1d0 + Add signals unit for win64
git-svn-id: trunk@16410 -
2010-11-23 23:57:10 +00:00
Jonas Maebe
749991ec02 + support extra parameter for initialize() that indicates how many elements
should be initialised, similar to how this was already allowed for
    finalize() (mantis #17998)

git-svn-id: trunk@16407 -
2010-11-23 15:14:40 +00:00
Jonas Maebe
44178f41b6 * don't overwrite register variables when evaluating <=/>= expressions with
smallsets (left is overwritten by an "and", so it cannot be const; mantis
    #18013)

git-svn-id: trunk@16400 -
2010-11-22 12:58:08 +00:00
Jonas Maebe
a5473c33cc * part of r16347, forgot to commit
git-svn-id: trunk@16367 -
2010-11-18 22:41:42 +00:00
paul
a8deeaa168 compiler: fix search of outer class type inside inner type declarations (bug #0017945)
git-svn-id: trunk@16352 -
2010-11-17 05:51:54 +00:00
paul
d99b4ae7c1 compiler: set moduleid for record symtables and descendants (fixes bug #0017950)
git-svn-id: trunk@16351 -
2010-11-17 02:40:41 +00:00
Jonas Maebe
c14574bb56 * don't change the fpu control word in the initialisation code of dynamic
libraries (mantis #16263, #16801)

git-svn-id: trunk@16347 -
2010-11-14 16:00:25 +00:00
Jonas Maebe
d36f8ac542 * fixed potential buffer overflow error when creating the fullprocname for
display purposes if there was a parameter with a default value > 255 chars
  * replace #0, #10 and #13 in the fullprocname with '.' so they do not cause
    line breaks or early string termination when writing them to the
    assembler file (mantis #17928)

git-svn-id: trunk@16344 -
2010-11-14 12:18:48 +00:00
Jonas Maebe
085e5fc65a + forgotten to add/commit in r16332
git-svn-id: trunk@16334 -
2010-11-13 13:04:37 +00:00
Jonas Maebe
de51c4734c * fixed searching for the 8-character variant of already compiled
unit files (patch by Aleksa Todorovic, mantis #17907)

git-svn-id: trunk@16329 -
2010-11-12 12:10:41 +00:00
pierre
a11ec43ca5 * add missing go32v2 GCC compiled objects
git-svn-id: trunk@16327 -
2010-11-11 22:48:56 +00:00
joost
8cc449b955 * Added Makefile.fpc which uses fpmake
git-svn-id: trunk@16325 -
2010-11-11 10:33:47 +00:00
sergei
a360f4c955 + Added a basic test for TCustomVariantType creation functionality.
git-svn-id: trunk@16322 -
2010-11-10 16:21:19 +00:00
Jonas Maebe
dd88644237 * record the vmt_offset as the actual offset of the vmt field, so that
it correctly reflects the alignment of the object symtable (mantis
    #16034)

git-svn-id: trunk@16321 -
2010-11-10 15:58:47 +00:00
Jonas Maebe
d45ba6c966 * only ordinals and enums can be bitpacked -> don't give an error when
e.g. passing a 3-byte record in a bitpacked array as var-parameter
    (mantis #17862)

git-svn-id: trunk@16317 -
2010-11-08 21:23:55 +00:00
Jonas Maebe
d1264eeb3a * fixed optimized division of signed values by constant power of 2 if the
constant is > high(longint), because then it must be loaded into a register
    first since such values cannot be encoded directly in non-mov x86-64
    instructions (mantis #17836)

git-svn-id: trunk@16305 -
2010-11-05 15:32:07 +00:00
paul
f5751d81db compiler: reset section type to regular fields section after the "public", "protected", ... and other section visibility keywords
git-svn-id: trunk@16302 -
2010-11-04 15:12:17 +00:00
sergei
87b8b02463 * Updated DBus headers to version 1.2.16
* Added 'cdecl' to all callback function type definitions.

git-svn-id: trunk@16300 -
2010-11-03 14:08:51 +00:00
sergei
b002c36e8b + Test for #17591
git-svn-id: trunk@16294 -
2010-11-02 07:36:55 +00:00
sergei
d8eccf008d + Test for Mantis #17560
git-svn-id: trunk@16291 -
2010-11-01 22:38:15 +00:00