Commit Graph

34446 Commits

Author SHA1 Message Date
Jonas Maebe
20c3809c3a * when a constant Objective-C class reference is used for anything but
the methodpointer of a call, transform it into a call to the classclass
    method because otherwise it can be used before the first call to any
    method of the class (such as in the packages/cocoaint/src/IvarSize test)
    and this can result in crashes

git-svn-id: trunk@18124 -
2011-08-06 19:49:59 +00:00
joost
f9b27806e4 * Switched packages to fpmake building
git-svn-id: trunk@18123 -
2011-08-06 18:15:44 +00:00
Jonas Maebe
c03ca27e60 * reparsed with latest version of parser
- disabled some headers for 64 bit platforms that are not available there
  * updated cocoa patch to adjust missed unions by the parser
  -> when compiled with current compiler, all field offsets
     and instance sizes should now match gcc's exactly

git-svn-id: trunk@18122 -
2011-08-06 18:12:40 +00:00
sergei
fec5dde5b6 * Fix handling of Windows WideString typed constants, resolves #15842 and completes the related #14308:
* Do not initialize unused symbols, because finalization code is not generated for them either.
  * Always initialize/finalize such constants, even if they are declared in {$J-} state and cannot be modified by user code.

git-svn-id: trunk@18121 -
2011-08-06 18:11:39 +00:00
Jonas Maebe
138a5cd0bd + enabled/tested objcrtl package also for 64 bit Darwin targets
git-svn-id: trunk@18120 -
2011-08-06 18:04:56 +00:00
Jonas Maebe
0398ff6bf5 * also save/restore the size of the padding of record/objectsymtables
* when creating a child class, ignore the padding added to the parent
    in case of objcclasses (gcc/clang also do that; maybe the same
    has to be done for cppclass as well)
  -> objcclass layouts seem to finally completely match the gcc ones

git-svn-id: trunk@18119 -
2011-08-06 18:01:39 +00:00
Jonas Maebe
1c11f6c8b7 + tppufile.putasizeint()
* save/restore tabstractrecordsymtable.datasize as asizeint instead of
    aint (not ppu version change because they are the same on all
    production targets)
  * add shortint() typecasts when reading/writing fieldalignment/
    recordalignment fields

git-svn-id: trunk@18118 -
2011-08-06 17:18:21 +00:00
Jonas Maebe
13598f1b5f * update of ppudump for r18114
git-svn-id: trunk@18117 -
2011-08-06 17:14:22 +00:00
joost
28446a9682 * Pass -ie to fpmake on distinstall, so that the example-sources are installed
git-svn-id: trunk@18116 -
2011-08-06 15:04:30 +00:00
Jonas Maebe
e0e326be8e + add {$packrecords c} to all units importing Objective-C records since
that's the alignment used by the system headers

git-svn-id: trunk@18115 -
2011-08-06 13:16:03 +00:00
Jonas Maebe
86b088f398 * store the current field alignment of tobjectdefs that use C_alignment,
because it influences the offset at which the next field in child classes
    should be placed in case it also uses C_alignment
  * also pad objectdefs based on the packrecords setting (Delphi-compatible)
  -> field offset calculation in objcclasses is now correct if they are
     compiled with {$packrecords c}

git-svn-id: trunk@18114 -
2011-08-06 13:11:23 +00:00
Jonas Maebe
5ed31d4345 * mark records containing at least one bitpacked field as "bitpacked" rather
than only record containing nothing but bitpacked fields (although in
    theory this can also cause errors, it results in correct data layouts
    for all Cocoa structs while the previous code didn't)
  * changed the translation of bitpacked structs so that the compiler will
    properly align them. This requires that all bitpacked fields are
    wrapped into a separate record though, so all fields are now accessible
    via recname.data.field instead of via recname.field. Since all fields
    in the Cocoa classes are private, this should not cause problems
    (except if exported record types are also used elsewhere)

git-svn-id: trunk@18113 -
2011-08-06 12:38:31 +00:00
Jonas Maebe
8af064cf00 * replaced a few eregi's with the faster preg_match()
git-svn-id: trunk@18112 -
2011-08-06 12:32:07 +00:00
Jonas Maebe
9de57f1bd8 * do not calculate array bounds in php, since they may be expressed via
symbolic constants rather than numerically
  * replace an empty C array (such as int[0]) with an empty record declaration
    rather than with an array of one element, since it doesn't take up any
    space in C either

git-svn-id: trunk@18111 -
2011-08-06 12:21:40 +00:00
marco
b59c42f2c7 * removed exporting a non standard strtotime, which was a workaround for missing
formatsettings/locale versions. Patch by Lacak2, Mantis #19870 (3rd)

git-svn-id: trunk@18110 -
2011-08-06 12:19:44 +00:00
joost
911a220a13 * Added the option (-ie) to install the example-sources
git-svn-id: trunk@18109 -
2011-08-06 12:17:57 +00:00
marco
a09a7f1b2e * Mantis #19567: PostgreSQL TIME datatype fix by Lacak2. milliseconds and not correcting fttime fields with epoch.
git-svn-id: trunk@18108 -
2011-08-06 11:38:55 +00:00
sergei
0231863fce + Added missing PMULLD instruction, part of Mantis #19910
git-svn-id: trunk@18106 -
2011-08-06 06:59:33 +00:00
marco
83af0c8a1b * TProcess.setparameter assigned a TStrings instead of .assign()ing it.
Patch from Cyrax, Mantis #19906

git-svn-id: trunk@18105 -
2011-08-05 22:17:30 +00:00
sergei
57ba5f956e + After reaching EOF condition, clear FNodeData[0] slot
* For entities in attributes, place entity name to FQName rather than to FValueStr.
* Allow doc to stay unassigned.

git-svn-id: trunk@18104 -
2011-08-05 18:45:16 +00:00
sergei
45771d0a70 * Changed behavior of FNesting to conform closer to semantics of .net XmlReader: increment it after the start tag has been parsed and decrement before processing the end tag, except for the root element (which is placed at index zero).
git-svn-id: trunk@18103 -
2011-08-05 15:34:42 +00:00
sergei
151a8b59fb * Factored ParseIgnoreSection into separate procedure
+ Overloaded THashTable.FindOrAdd(const WideString) for convenience

git-svn-id: trunk@18102 -
2011-08-05 15:06:39 +00:00
marco
431f1992d1 * Fixed filename in readme, patch from Attila Borka, Mantis #19826
git-svn-id: trunk@18101 -
2011-08-05 13:42:49 +00:00
marco
bf65638891 * strtodatetime adapted to new strtotime regime. Take separator from formatsettings.
Second patch fo Mantis #19870

git-svn-id: trunk@18100 -
2011-08-05 13:37:16 +00:00
marco
aeb7dac66e * TDataset.BlockReadSize, patch by Luiz, mantis 19897 (library part. test in that report not included)
git-svn-id: trunk@18099 -
2011-08-05 12:27:42 +00:00
Jonas Maebe
0d4d1a2ac8 * fixed two places where after r1913 valid_for_assign() didn't immediately
exit anymore if an error was detected

git-svn-id: trunk@18098 -
2011-08-04 22:44:00 +00:00
joost
981e79ff37 * Do not use the error-handling of r10890 on non-unix systems (It won't work)
git-svn-id: trunk@18097 -
2011-08-04 22:13:20 +00:00
joost
5146bea422 * Updated fpmake_proc.inc and fpmake_add.inc. Manually changed the entry for
gdbint, because detecting the gdblib-version needs some specials. Later
   all other entries can be changed alike.

git-svn-id: trunk@18096 -
2011-08-04 19:26:59 +00:00
joost
8c03cf38c7 * Added detection of gdb-version to fpmake
git-svn-id: trunk@18095 -
2011-08-04 19:19:06 +00:00
joost
79473cd0f7 * Made BuildEngine.log public, so it can be used in fpmake.pp files
* Made BuildEngine.ResolveFileNames public, so it can be used in fpmake.pp
   files
 * Do not try to add compiler-options to executables other then the compiler

git-svn-id: trunk@18094 -
2011-08-04 19:03:05 +00:00
marco
52afb619aa * add overloaded strtotime, patch by Lacak2, Mantis #19870
git-svn-id: trunk@18093 -
2011-08-04 17:01:34 +00:00
joost
728c5a4832 * Error-handling added in make distclean. When the fpmake executable
returns a exit-code not equal to 0, the executble is removed and
   make fpc_cleanall is called recursively, to avoid manual intervention

git-svn-id: trunk@18090 -
2011-08-04 08:49:46 +00:00
michael
3ffbd29367 * Make HandleRequest public
git-svn-id: trunk@18089 -
2011-08-04 07:18:13 +00:00
marco
da37e20ed6 * Map text to ftmemo(binary) instead of ftblob
Patch by Lacak2, mantis 19876

git-svn-id: trunk@18088 -
2011-08-03 22:09:30 +00:00
joost
48a56e03d7 * fpmake.pp-file fixes
git-svn-id: trunk@18087 -
2011-08-03 22:04:39 +00:00
joost
4d5a4a2dd7 * fpmake-file updates for darwin
git-svn-id: trunk@18086 -
2011-08-03 21:14:29 +00:00
marco
92d4bc1a31 * TNumericField.SetAsboolean Mantis 18765
git-svn-id: trunk@18085 -
2011-08-03 20:49:56 +00:00
marco
550657f0e0 * Another attempt to kill stale mergeinfo
git-svn-id: trunk@18081 -
2011-08-03 20:33:49 +00:00
joost
e44a68a190 * Several fpmake.pp fixes
git-svn-id: trunk@18080 -
2011-08-03 20:29:57 +00:00
marco
617bf55e9f * fixed some files with svn:mergeinfo
git-svn-id: trunk@18079 -
2011-08-03 20:24:03 +00:00
joost
595c764c77 * Disabled compilation of matroska for fpmake, like it is done for fpcmake
git-svn-id: trunk@18078 -
2011-08-03 20:08:35 +00:00
joost
6ae49f6c74 * Some fpmake fixes for windows
git-svn-id: trunk@18076 -
2011-08-03 15:32:15 +00:00
marco
043e9b2ec2 * Trunk version to 2.7.1
git-svn-id: trunk@18075 -
2011-08-03 13:59:33 +00:00
marco
39d7bb511d * Regenned all makefiles before 2.6.x branching.
git-svn-id: trunk@18073 -
2011-08-03 13:41:52 +00:00
Jonas Maebe
b4328c71a6 * also mention ARM as supported architecture for mach-o
git-svn-id: trunk@18072 -
2011-08-02 22:14:52 +00:00
Jonas Maebe
b4a6e803d2 * fixed cosmetic error in help after r18070
git-svn-id: trunk@18071 -
2011-08-02 22:13:54 +00:00
Jonas Maebe
ec8c7b4888 + when compiling for Darwin/ARM, pass the subarchitecture to the linker.
The old linker option to accept object files from all subarchitecture
    types no longer works.
  + support for subarchitectures in fcl-res/fpcres

git-svn-id: trunk@18070 -
2011-08-02 20:41:39 +00:00
Jonas Maebe
da056da20f + added armv7 identifier (no special code generation, but required to
link against Xcode 3.2.6/4-generated code for ARMv7 -- use -Cparmv7,
    but note that you also have to compile the RTL and all other units with
    this option for them to be linkable against other ARMv7 code when using
    those tools)

git-svn-id: trunk@18069 -
2011-08-02 20:36:43 +00:00
Jonas Maebe
d7c1967351 * fixed switched around lists for read-only/read-write typed consts
git-svn-id: trunk@18068 -
2011-08-02 20:32:48 +00:00
joost
6bad75a1eb * When the fpmake executable is deleted, perform a regular fpcmake distclean. See bug #19655
git-svn-id: trunk@18067 -
2011-08-02 19:29:59 +00:00