Commit Graph

2147 Commits

Author SHA1 Message Date
marco
2ee5b728ba * disable the 1:1 aliases of the legacy errorhandling.
Leave the more complex functions under deprecated. 
   Also keep the errorhandling for at least another cycle.

git-svn-id: trunk@13498 -
2009-08-08 12:25:59 +00:00
Jonas Maebe
30bfca91a9 * made application of rounding correction more accurate
(does *not* resolve #14230)

git-svn-id: trunk@13494 -
2009-08-06 20:41:43 +00:00
florian
90d71ee7da * SwapEndian(<16 Bit>) needs inline in the interface section as well
git-svn-id: trunk@13454 -
2009-07-26 13:57:51 +00:00
florian
6ff15f46e2 * made SwapEndian(<16 Bit>); inlined
git-svn-id: trunk@13453 -
2009-07-26 13:50:57 +00:00
florian
e362e85039 * fixed last commit: UTF8Encode -> UTF8Decode
git-svn-id: trunk@13452 -
2009-07-26 13:09:31 +00:00
florian
d38340c753 + utf-8 <-> variant type casts, resolves #11371
* ucs-4 -> variant type cast (variant -> ucs-4 is not possible due to overloading contraints of fpc and how ucs-4 is implemented)
* some newlines fixed

git-svn-id: trunk@13451 -
2009-07-26 12:58:49 +00:00
Jonas Maebe
9c280eae26 * fixed range error introduced in r13213
git-svn-id: trunk@13328 -
2009-06-27 11:20:30 +00:00
florian
a5f3cd9b1d * take random feature switch into account
git-svn-id: trunk@13300 -
2009-06-19 15:26:06 +00:00
ivost
02d177c885 * added FillQWord, IndexQWord, but CompareQWord is still missing
git-svn-id: trunk@13282 -
2009-06-15 21:35:52 +00:00
michael
0021183eb6 * Patch from reporter of bug ID #13924 to fix arguments with spaces if no argv is declared.
git-svn-id: trunk@13246 -
2009-06-07 08:53:36 +00:00
michael
6452f5b692 * Some TCustomVariant methods implemented
git-svn-id: trunk@13213 -
2009-05-30 12:07:16 +00:00
Tomas Hajny
2353848004 * extension of r13191 to OS/2, EMX and potential other platforms using crt.inc based implementation of unit crt
git-svn-id: trunk@13207 -
2009-05-27 21:18:35 +00:00
Jonas Maebe
78c29a33ba * changed the parameters of gotoxy() and the return values of wherex/wherey
from byte into tcrtcoord=1..255, since all crt unit coordinates are
    1-based (not for Window() procedure, see comments in crth.inc;
    mantis #13788)

git-svn-id: trunk@13191 -
2009-05-24 11:48:49 +00:00
yury
628b0c23ac * exeinfo: Return executable image base and current module base address on Windows.
* exeinfo: Properly handle long COFF section names. Bug #13499.
* lineinfo, lnfodwrf: Properly use executable image base and current module base address.

git-svn-id: trunk@13145 -
2009-05-15 22:14:09 +00:00
Jonas Maebe
b77bff2996 + cardinal/qword overloads for interlocked* routines (mantis #13281)
git-svn-id: trunk@13127 -
2009-05-10 15:22:38 +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
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
micha
c9bea201ce * heaptrace: fix calculation of expected free heap
git-svn-id: trunk@13080 -
2009-05-02 13:48:23 +00:00
Jonas Maebe
dcb1046b98 * moved core logic from fpc_shortstr_enum into a separate function, so
it can be reused in fpc_write_text_enum (currently it duplicates that
    code). I seem to have lost my corresponding changes to text.inc though,
    so removing the duplicate code will be for another time.

git-svn-id: trunk@13076 -
2009-05-02 08:48:48 +00:00
Jonas Maebe
533f533868 * changed destination parameter of getmem/getmemory from "var" to "out"
(mantis #11907)

git-svn-id: trunk@13036 -
2009-04-25 09:57:29 +00:00
Jonas Maebe
f9a17c47bd * write output to screen if log file(s) cannot be opened (mantis #12532)
git-svn-id: trunk@13032 -
2009-04-24 13:28:06 +00:00
ivost
0e9690c31b * added striscan, strriscan and stripos
git-svn-id: trunk@13019 -
2009-04-17 10:08:17 +00:00
ivost
cf544462d8 * fixed typo in comment of strpos
git-svn-id: trunk@13018 -
2009-04-17 09:45:03 +00:00
Jonas Maebe
757abc620a * comparing tdatetime variant values has to happen without an epsilon,
as all bits of the double value encode date/time information
    (mantis #13110)

git-svn-id: trunk@12962 -
2009-03-23 17:00:58 +00:00
Jonas Maebe
b5494c534c * handle EsockEINTR for fpaccept and fpconnect
git-svn-id: trunk@12939 -
2009-03-21 16:11:08 +00:00
Jonas Maebe
d67dbcf030 * fixed UTF8ToUnicode() based on patch by JoshyFun, and also added
support for 4-character UTF-8 codepoints (mantis #11791)
  * fixed UnicodeToUtf8() based on patch by A. J. Miller (mantis
    #13075)

git-svn-id: trunk@12902 -
2009-03-15 15:47:39 +00:00
Jonas Maebe
02bfd45775 * corrected properties
git-svn-id: trunk@12900 -
2009-03-15 15:21:17 +00:00
Jonas Maebe
ab8b32dafb - removed PARAOUTFILE define and ifdefs
git-svn-id: trunk@12898 -
2009-03-15 12:31:02 +00:00
Jonas Maebe
6165536b5e + added {$modeswitch objectivec1}/-Mobjectivec1 mode switch to enable
the use of Objective-C 1.0 constructs. Because it is a mode switch, it
    can be used cumulatively with every syntax mode. Note that a {$mode xxx}
    statement resets all mode switches as well, so you cannot use the
    -Mobjectivec1 variant if you have such a statement in a unit. This
    modeswitch is currently only enabled for Darwin/PowerPC and Darwin/i386,
    as the backend support is not yet implemented for other platforms.
  + implemented selector() statement that can be used to create an Objective-C
    selector for the message with the specified *constant* name (in the future,
    it will also work for Objective-C method identifiers)
  + added SEL type to the system unit (the selector() statement returns it)
  + added all Objective-C segments to the assembler writers
  + (currently mostly dummy) objc1 unit that is automatically included if the
    {$modeswitch objectivec1} statement is used
  + some tests for the selector() statement

git-svn-id: trunk@12870 -
2009-03-08 18:40:32 +00:00
florian
8a940151a7 o patch by Sergej Gorelkin:
* When OpenExeFile is called with an empty filename argument, 
    it apparently opens stdin and crashes immediately thereafter trying to seek in non-seekable stream. 
    The filename is empty whenever GetLineInfo is called with the address that does not belong to valid module.

git-svn-id: trunk@12802 -
2009-02-26 18:34:48 +00:00
micha
82e9d9009d * fix memory leak introduced in rev 9696, orphaned os chunks are not reused for short-lived threads (fixes issue #13173)
git-svn-id: trunk@12759 -
2009-02-20 22:35:41 +00:00
ivost
0438667eed * fixed bug #5800
* const s: string = icorbainterface; is possible now
* as operator is working now with corba interfaces
* supports helper function is working now with corba interfaces

git-svn-id: trunk@12729 -
2009-02-09 00:35:09 +00:00
Jonas Maebe
95431c57f5 * fixed variantarrays for 64 bit systems after the changes in 2.2.0 to
turn variantarray indices into longints
  * extended tw9161 to also test storing and retrieving dynamic arrays
    in/from variant arrays

git-svn-id: trunk@12713 -
2009-02-08 00:24:03 +00:00
Jonas Maebe
7950db7f2f * fixed (harmless) range check errors
git-svn-id: trunk@12710 -
2009-02-07 22:25:33 +00:00
ivost
0f519439b5 * reverted r12690 and r12691
* but extended ptconst so that a com interface maybe assigned to a TGuid const

git-svn-id: trunk@12692 -
2009-02-06 02:56:13 +00:00
ivost
7f2c77a407 * temporarly disabled GetInterface(iidstr: .... to keep fpc compiling
git-svn-id: trunk@12691 -
2009-02-06 01:37:52 +00:00
Jonas Maebe
213c00b17f * updated check for minimum version required to build trunk (at least
FPC 2.2.2)

git-svn-id: trunk@12671 -
2009-02-03 11:43:42 +00:00
florian
1b79f2ebcf * improved feature defines
+ basic consoleio support for the embedded target

git-svn-id: trunk@12637 -
2009-02-01 12:44:25 +00:00
florian
c127154efa o Haiku patches by Olivier Coursiere
+ add posix thread support
  * improve signal handling
  * synchronize haiku's baseunix unit with the unix one (maybe it will be possible to remove Haiku's one in a future patch, but i keep it for now)
  + add support for standard sockets
  * fix some functions import to use the right libraries under Haiku
  * fix packages compilation

git-svn-id: trunk@12636 -
2009-02-01 10:30:55 +00:00
Jonas Maebe
b912e00440 * renamed rol/ror functions into rolbyte/rolword/roldword/rolqword
(and the same for ror), because their operation is very dependent on the
    operand size, and it's fairly easy to misjudge the bitwidth of the outcome
    of an expression in Pascal if you are not intimately familiar with the
    language (or if you don't know the exact types of all involved values in
    an expression)

git-svn-id: trunk@12621 -
2009-01-28 12:56:27 +00:00
ivost
38bf32dddf * added csize_t and pcsize_t for non unix systems (in unix/ctypes.pp)
* added csize_t = UnixTypes.size_t in ctypes.pp for unix systems.
* reason: size_t is a C type and it's often used by C header files. Several packages define their own size_t. 

git-svn-id: trunk@12602 -
2009-01-26 12:58:20 +00:00
florian
2510af64d1 * fixed compilation of embedded system unit: path helper functions depend now on the avaibility of the textio/fileio feature
git-svn-id: trunk@12599 -
2009-01-26 08:23:38 +00:00
Jonas Maebe
5a88be1030 * set default stack size to 4 MiB instead of to 32 KiB
git-svn-id: trunk@12526 -
2009-01-08 18:08:32 +00:00
Jonas Maebe
b7d461d0f0 * fixed generic stack checking code (the stack pointer is already decreased
before FPC_STACKCHECK is called, so don't subtract the allocated size
    again when checking)

git-svn-id: trunk@12525 -
2009-01-08 18:05:11 +00:00
Jonas Maebe
22aacd2a60 * return 0 for length(pchar(0)), like Kylix does (using corrected and
multi-platform version of patch in r12461, which caused the i386 version
    of fpc_pchar_length to return 0 in all cases, which used tabs, and did
    not include a test case)

git-svn-id: trunk@12464 -
2009-01-01 22:02:17 +00:00
michael
a580fe60d0 * Patch from Inoussa OUEDRAOGO so it can work with Delphi2009 and unicode chars
git-svn-id: trunk@12403 -
2008-12-19 17:49:24 +00:00
Jonas Maebe
d3923b315a * generic support for setting islibrary to true for libraries (+ changed
tlibrary1 to test this)

git-svn-id: trunk@12377 -
2008-12-17 17:49:16 +00:00
Jonas Maebe
afafe33266 + readded FPC_WRITE_TEXT_ANSISTR alias removed in r12322, because it's
required by the variant code

git-svn-id: trunk@12337 -
2008-12-11 12:31:23 +00:00
Jonas Maebe
53a638ad9f - removed no longer needed alias names
git-svn-id: trunk@12322 -
2008-12-10 19:24:01 +00:00
florian
d78855cea8 + more c types
git-svn-id: trunk@12175 -
2008-11-19 11:36:43 +00:00