Commit Graph

30641 Commits

Author SHA1 Message Date
marco
8c3305824a * stream positioning fix from mantis 12897 as well as some minor style fixing I had lying around
git-svn-id: trunk@13126 -
2009-05-10 14:30:13 +00:00
Jonas Maebe
927dfc526a * search include files specified using relative path also in the include
search paths (mantis #13461)

git-svn-id: trunk@13125 -
2009-05-10 13:42:41 +00:00
Jonas Maebe
9ed40aa926 - reverted r13079, it gives wrong results when using heaptrc with an
program that does nothing. It was also not logical, because the expected
    free heap at the end is the total heap size minus any allocated blocks
    and minus the memory that was allocated before heaptrc was activated
    (as the old code calculated, and as it does again now -- mantis #13678)

git-svn-id: trunk@13124 -
2009-05-10 09:28:47 +00:00
sergei
4cabfad02a xpath.pp: Fixed lexical analysis in ParseStep(), now conformant with paragraph 3.7 of the specs:
* Identifier is treated as AxisName only if it is followed by '::'
* Identifier is treated as NodeType only if it is followed by '('.

git-svn-id: trunk@13123 -
2009-05-09 20:27:29 +00:00
Jonas Maebe
14558c3388 + objcrtl package by Dmitry Boyarintsev: interface for the Mac OS X
Objective-C run time 1.0 and 2.0, for 32 bit platforms

git-svn-id: trunk@13122 -
2009-05-09 20:24:21 +00:00
Jonas Maebe
0597c300f4 * applied feature dependencies patch by Sven Barth from mantis #13673 :
o i386/i386.inc used a function (fpc_truely_ansistr_unique) is now
     only included if FPC_HAS_FEATURE_ANSISTRINGS is enabled (all other
     platforms use the Pascal-only implementations)
   o inc/heap.inc relied on threading
   o inc/threads.inc relied on exceptions, consoleio and stackcheck
   o inc/system.inc: just a feature-related "variable not used"-hint

git-svn-id: trunk@13121 -
2009-05-09 20:08:57 +00:00
sergei
f3e64cf8ce xpath.pp: replaced TXPathScanner.SaveState/RestoreState by PeekToken().
git-svn-id: trunk@13120 -
2009-05-09 19:55:38 +00:00
Jonas Maebe
53ad1bcabe * fixed linux flock type by defining and using a kernel_off_t type
whose size depends on whether the run time environment is 32 or
    64 bit (mantis #13647)
  + added flock64 type for 32 bit systems (usable with special 64 bit
    fcntl operations)

git-svn-id: trunk@13119 -
2009-05-09 19:47:59 +00:00
joost
1ce9d05b78 * Fixed ODBC-Widestring fields
git-svn-id: trunk@13118 -
2009-05-09 14:55:22 +00:00
joost
be72be8c8e * Fixed library name and compilation on windows, bug #12881
git-svn-id: trunk@13117 -
2009-05-09 10:05:44 +00:00
sergei
d03e569ae9 Further XPath improvements:
+ Implemented [more or less] correct parsing of last two variations of PathExpr [19].
  (only parsing - evaluation still has to be done).

git-svn-id: trunk@13116 -
2009-05-08 21:30:55 +00:00
sergei
d839aada5b xpath refactoring:
* Split parsing location steps into a separate procedure, TXPathScanner.ParseStep();
* Changed some case statements to if's, in order to improve indentation and readability.

git-svn-id: trunk@13115 -
2009-05-08 07:42:55 +00:00
paul
66b2ecd936 gtk2: fix TGtkBox declaration for windows
git-svn-id: trunk@13114 -
2009-05-08 05:07:21 +00:00
sergei
dceb9320f5 Cleanup of dom.pp:
- Removed TRefClass, memory of TDOMNodeList's must be managed in some other way (part of #13605).
- Removed unnecessary forward class declarations.

git-svn-id: trunk@13113 -
2009-05-07 18:13:14 +00:00
Jonas Maebe
74042f791d * completed making debugstart/end labels local for darwin as started
in r13111

git-svn-id: trunk@13112 -
2009-05-07 18:12:30 +00:00
Jonas Maebe
9a8ac8cecc * make the dwarf debugstart/end labels local for Darwin, because the darwin
linker does not like two global labels both pointing at the end of a
    section (causes "atom sorting error" warnings), and this happened for
    units without any code after r13098

git-svn-id: trunk@13111 -
2009-05-07 16:42:46 +00:00
yury
c4439e4e39 * Properly write 64-bit relocations into .reloc section.
* Warning when 64-bit object file contains 32-bit absolute relocations. In such case an executable image can be loaded into lower 4Gb of address space only.

git-svn-id: trunk@13110 -
2009-05-07 10:46:56 +00:00
sergei
9fe4f59c5a Three XPath scanner fixes:
* #12 is not a whitespace char;
* '!' is not valid unless it is a part of '!=' token;
* Accept full XML 1.0 name character range as identifiers.

git-svn-id: trunk@13109 -
2009-05-07 06:51:41 +00:00
ivost
b340822af2 * added FreeObjects property to TFPGObjectList (as known from TObjectList in contnrs)
git-svn-id: trunk@13108 -
2009-05-06 22:50:25 +00:00
Jonas Maebe
8193cd175d * corrected *Between() functions: add epsilon and truncate, rather than
round the results (bug reported on irc)

git-svn-id: trunk@13107 -
2009-05-06 20:35:20 +00:00
sergei
8c898e963a + Implements XPath function id() + test. Running the test is another story, however, because it requires parsing FilterExpr+'/'+RelativeLocationPath, which is currently not implemented.
git-svn-id: trunk@13106 -
2009-05-06 20:07:09 +00:00
Jonas Maebe
c1e327c8c4 * insert register allocation/deallocation information for the exception
handling code (g_exception_reason_load() now automatically allocates
    the cpu register that it loads). This fixes the bug reported in
    http://lists.freepascal.org/lists/fpc-devel/2009-May/016773.html
    on i386 with -O2)

git-svn-id: trunk@13105 -
2009-05-06 19:11:54 +00:00
yury
5cd83b26d9 * More proper check for executable image size limits.
* Proper handling of 64-bit COFF relocations.
* Use jumps with 32-bit relative addressing in imports on win64.
* This fixes are related to bug #13657. The bug is not fully fixed yet...

git-svn-id: trunk@13104 -
2009-05-06 18:07:07 +00:00
ivost
2d00cab50c * updated zlib header to version 1.2.3
git-svn-id: trunk@13103 -
2009-05-06 13:10:19 +00:00
ivost
f38c6c609d * implemented TFPGInterfacedObjectList. it's the same as TFPGObjectList but ref counted.
git-svn-id: trunk@13102 -
2009-05-05 12:26:42 +00:00
Jonas Maebe
71ecb3e83b * use a different value to test qword->double conversion, which
is less ambiguous as far as generating the "closest" floating point
    representation is concerned (fixes test on on systems where the max.
    fpu precision is double)

git-svn-id: trunk@13101 -
2009-05-05 10:48:21 +00:00
joost
67dcd3be0b * Allow string-parameters of more then 8000 characters, bug #13530
git-svn-id: trunk@13100 -
2009-05-04 21:36:21 +00:00
yury
16e19aaef3 * Some cleanup.
git-svn-id: trunk@13099 -
2009-05-04 18:45:08 +00:00
yury
9c9462cd5a * Insert DW_AT_low_pc and DW_AT_high_pc attributes for modules on Windows also. It solves debugging problems on Windows with dwarf debug info.
git-svn-id: trunk@13098 -
2009-05-04 18:36:08 +00:00
yury
9acecc0863 * Do not switch to external assembler if dwarf debug info is used.
git-svn-id: trunk@13097 -
2009-05-04 11:20:49 +00:00
yury
b1427bad2e * Fixed internal assembler writer to handle offset calculations with forward symbols involved. Internal assembler can handle dwarf debug info now.
git-svn-id: trunk@13096 -
2009-05-04 11:19:48 +00:00
yury
99917e034d * Fixed visibility notes of some overrode methods.
git-svn-id: trunk@13095 -
2009-05-04 10:24:47 +00:00
yury
2b3a54cec0 * Allow usage of internal linker when dwarf debug info is used.
git-svn-id: trunk@13094 -
2009-05-04 10:19:54 +00:00
yury
9d78ca3f19 * RELOC_SECREL32 must be relative to EXE section, not to object file section.
* Write zero to relocs in debug sections, which point to unused sections, eliminated by linker.
* It seems internal linker creates correct dwarf debug info now.

git-svn-id: trunk@13093 -
2009-05-04 09:42:51 +00:00
yury
50060dfd52 * Do not assume sizeof(pint) section alignment if no alignment is specified for the section.
git-svn-id: trunk@13092 -
2009-05-04 08:27:36 +00:00
marco
6f1f21c432 * optbase empty skeleton removed with two dependancies. Duplicate unit name caused problems.
git-svn-id: trunk@13091 -
2009-05-03 21:31:33 +00:00
joost
ce55400037 * Call UpdateServiceIndexDefs before Execute, to avoid problems with databases which do not allow processing multiple recordsets at a time (MS SQL, bug #13241)
git-svn-id: trunk@13090 -
2009-05-03 21:01:31 +00:00
joost
8babc4920c * Fix for streaming TSQLQuery.SQL and TSQLTransaction.Params
git-svn-id: trunk@13089 -
2009-05-03 20:47:52 +00:00
yury
070fa422b5 * Partially reverted r12648. PE flags should be set in main PE header (and it is done already). LoaderFlags in optional header are obsolete.
git-svn-id: trunk@13088 -
2009-05-03 14:43:46 +00:00
Jonas Maebe
9ab6e355a3 * Miscellaneous is with two l's...
git-svn-id: trunk@13087 -
2009-05-03 11:48:30 +00:00
Jonas Maebe
2706eeafcf * comment change: Playthingies -> Miscelaneous
git-svn-id: trunk@13086 -
2009-05-03 08:17:02 +00:00
Jonas Maebe
9344484ea7 * allocregbetween has to update the "initialregs" parameter, because it
can remove regallocs for the allocated register and reinstert them
    before already processed instructions, thereby preventing the
    peephole optimizer from ever seeing the allocation for this register
    (mantis #13612)

git-svn-id: trunk@13085 -
2009-05-02 22:26:24 +00:00
Jonas Maebe
445c842db3 * made ifthen() declaration in strutils Delphi-compatible (removed overloads
that cause various problems, added "overload" directive so it gets
    overloaded next to the routines in the "math" unit) (based on patch
    by Alexander S. Klenin, mantis #13619)
  - removed "inline" from that function because all the reference increasing/
    decreasing in its body mainly cause code bloat and little if any speed
    increase

git-svn-id: trunk@13084 -
2009-05-02 15:50:41 +00:00
yury
4da38a7723 * API records are not packed on wince. Bug #13614.
git-svn-id: trunk@13083 -
2009-05-02 14:22:55 +00:00
yury
57e49c4bb9 * Fixed AV in SysErrorMessage() when there is no message string corresponding to a error code. Bug #13617.
git-svn-id: trunk@13082 -
2009-05-02 14:15:50 +00:00
yury
f59d1b1b0b * Added UnicodeString helpers to widestring manager for wince. Bug #13057.
git-svn-id: trunk@13081 -
2009-05-02 13:59:39 +00:00
micha
c9bea201ce * heaptrace: fix calculation of expected free heap
git-svn-id: trunk@13080 -
2009-05-02 13:48:23 +00:00
Jonas Maebe
5a09f58526 * only allow implicit type conversions from dynamic arrays to voidpointer
in Delphi mode, rather than to any pointer type (confused overload
    selection in mantis #13639)

git-svn-id: trunk@13079 -
2009-05-02 12:50:14 +00:00
yury
80fe51380d * Removed unused private fields TThread.FMethod and TThread.FSynchronizeException.
* Removed all code of TThread.Synchronize() for BeOS, since existing code is copy/paste from win32 code and does not work anyway.

git-svn-id: trunk@13078 -
2009-05-02 12:09:30 +00:00
Jonas Maebe
f6d452c2c0 * remove the RTL's installed signal handlers at the end of the system
unit's initialization code in case we're in a library
  + implemented InquireSignal(), AbandonSignalHandler(), HookSignal() and
    UnhookSignal() in the sysutils unit
  * for Kylix compatibility, these routines support operating on
    SIGINT and SIGQUIT as well, although they are not hooked by default
    by FPC. The run time errors/exception codes for these signals are
    resp. 217 and 233 (same as in Kylix; I changed ENoWideStringSupport
    to 234).
  * changed the BSD syscall version of fpsigaction to use pointer
    rather than "var" arguments (compatible with other targets, and
    required to be able to pass nil arguments inside the system unit)
  -> together fixes mantis #12704

git-svn-id: trunk@13077 -
2009-05-02 09:40:44 +00:00