Commit Graph

1816 Commits

Author SHA1 Message Date
Jonas Maebe
25463000ac * do not mark all found files with Find* as "faHidden" if the search path
starts with './' (mantis #14020)
  * also mark files whose name starts with '.' that are found in subdirectories
    as faHidden (not reported, but was due to a similar error)
  - removed some unused variables related to the Find* functionality

git-svn-id: trunk@13307 -
2009-06-21 10:21:06 +00:00
ivost
7772f8ccbf * added testcase for bugrepport 14019 submitted by hennymcc
git-svn-id: trunk@13305 -
2009-06-20 22:32:09 +00:00
Jonas Maebe
80864ebf31 * made TDebugInfoDwarf3 inherit from TDebugInfoDwarf2 instead of from
TDebugInfoDwarf, so DWARFv2 and DWARFv3 generators can share protected
    methods.
  * fixed the debug info for sets whose language-level lower bound is not
    equal to the actual set base used when storing the data (e.g., a "set
    of 1..5" is actually stored as a "set of 0..7" or "set of 0..31")
    (mantis #13984)
  + interactive test for the above

git-svn-id: trunk@13302 -
2009-06-20 10:45:04 +00:00
Jonas Maebe
47702aa3a5 * disallow new(property) (mantis #13992)
git-svn-id: trunk@13288 -
2009-06-18 09:23:43 +00:00
Jonas Maebe
79e6ed5047 * fixed CenterPoint() function (patch by Alexander S. Klenin, mantis #13972)
git-svn-id: trunk@13274 -
2009-06-14 14:12:09 +00:00
Jonas Maebe
5c4f80d6bc * when optimizing temp assignments by simply replacing one temp with
another, it's not enough that the temp sizes are the same, because
    the assignment may only apply to part of them. In such cases,
    perform a regular copy (mantis #13948)

git-svn-id: trunk@13255 -
2009-06-10 19:14:40 +00:00
marco
2f218391d4 * initial htmlhelp header translation
git-svn-id: trunk@13249 -
2009-06-09 19:54:00 +00:00
Jonas Maebe
ba951580a2 * fixes and cleanups for tbits (patch by Sergei Gorelkin, mantis #13890)
git-svn-id: trunk@13243 -
2009-06-06 14:35:25 +00:00
Jonas Maebe
e13a708002 * fixed compiler crash when using a bitpacked array whose size was
close to high(longint) bytes

git-svn-id: trunk@13241 -
2009-06-06 12:33:18 +00:00
Jonas Maebe
41acad1d11 + keep track of called virtual methods per unit. -Owoptvtms will now replace
vmt entries of virtual methods that can never be called with references
    to FPC_ABSTRACTERROR. Some virtual methods are always considered to be
    reachable: published methods, and methods used as getter/setter for a
    published property.

git-svn-id: trunk@13238 -
2009-06-06 08:24:36 +00:00
marco
9a9b05b683 * file not added in earlier commit, and was forgotten.
git-svn-id: trunk@13233 -
2009-06-04 07:49:25 +00:00
marco
d87ba9d285 * multimon added (From Paul Ishenin), renamed dwmapi extension to .pp
git-svn-id: trunk@13232 -
2009-06-03 13:52:34 +00:00
florian
398b5806b1 * TCollectionItem.Changed checks update counter of collection, resolves #13813
git-svn-id: trunk@13225 -
2009-06-01 16:09:56 +00:00
marco
287758598e * dwmapi api (Glass and stuff) added. From Paul Ishenin.
git-svn-id: trunk@13221 -
2009-06-01 09:22:25 +00:00
Legolas
d2dabe9a33 * updated nds/gba linker scripts and reverted some changes for 2.2.4a release
- Removed unused/outdated stuff from libndsfpc
+ Added new examples for libndsfpc
+ Added working (I hope so...) makefile.fpc for all libndsfpc/libgbafpc examples

git-svn-id: trunk@13217 -
2009-05-31 12:15:24 +00:00
sergei
466c41da12 * Added .txt extension to README_DOM (this one was missed while fixing Mantis #12358)
git-svn-id: trunk@13215 -
2009-05-31 09:14:37 +00:00
Jonas Maebe
e6bf70fc05 * fixed/cleaned up tests for "nil + 1"
git-svn-id: trunk@13212 -
2009-05-30 11:29:54 +00:00
Jonas Maebe
7e908cb1e3 * forbid "nil +/- ordinal" expressions (Delphi-compatible, and the
expression is meaningless since nil is not a valid address)

git-svn-id: trunk@13205 -
2009-05-27 17:50:55 +00:00
marco
92e235d92b * tmschema as include file added at Paul's request
git-svn-id: trunk@13199 -
2009-05-26 16:54:49 +00:00
marco
ffc2750cd0 * uxtheme moved from Lazarus.
* Disabled (ifdeffed) lock around init/finalization because of circular
    reference between fcl-base and winunits-base. If needed it can be
    recoded directly using system specific (windows.pas) routines.

git-svn-id: trunk@13197 -
2009-05-26 12:24:58 +00:00
Jonas Maebe
966ebbf157 * fixed missing reference counting in case a refcounted type was implicitly
type casted to a non-refcounted type, e.g. dynarray to pointer in Delphi
    mode (mantis #13820)

git-svn-id: trunk@13195 -
2009-05-25 19:41:14 +00:00
Jonas Maebe
17a7903e60 * fixed evaluating "nil +/- int_const" expressions (mantis #13815)
git-svn-id: trunk@13194 -
2009-05-25 18:34:04 +00:00
Jonas Maebe
ee69d00bec - unconditionally enabled {$ifdef PARAOUTFILE}-code (that define was
decomissioned quite a while ago, but this file was forgotten in
    that process)

git-svn-id: trunk@13181 -
2009-05-21 09:57:45 +00:00
Jonas Maebe
b59d1f724b * support {$i *.ext} to include source files with the same base name, but
with a different extension than the current source file (mantis #13696)

git-svn-id: trunk@13163 -
2009-05-17 14:33:20 +00:00
marco
39afd88425 * mingw textmode IDE debugging support. First working version (for me), atexit handler for mingw and cygwin stuff under ifndef USE_MINGW_GDB
git-svn-id: trunk@13157 -
2009-05-17 12:22:41 +00:00
Jonas Maebe
3a8b29be91 + test conversion from class to differently sized enum and to differently
sized integer (succeed for Delphi, fail for objfpc)
  * fixed compiler so it only allows typecasting a class/interface to a
    differently sized integer in Delphi mode

git-svn-id: trunk@13152 -
2009-05-16 11:07: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
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
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
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
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
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
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
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
Jonas Maebe
99a02a93ca * also consider the search attributes for findfirst if the name does
not contain wildcards + test
  * don't return true from FindGetFileInfo if the file name is ok, but the
    search attributes don't match (resulted in returning multiple times the
    name of the previous entry that did fulfill all requirements)

git-svn-id: trunk@13074 -
2009-05-01 16:03:56 +00:00
Jonas Maebe
dd55947b4b - disabled jump tables for x86_64, because they cause various kinds of
crashes with dynamic libraries (mantis #13628 and related bugs)

git-svn-id: trunk@13073 -
2009-05-01 14:54:38 +00:00
Jonas Maebe
69198e95f9 + darwin/x86_64 test object files
git-svn-id: trunk@13067 -
2009-05-01 11:10:30 +00:00
Jonas Maebe
a5376cbdff + test for mantis bug #13622 (already works with 2.3.1)
git-svn-id: trunk@13061 -
2009-04-30 09:11:37 +00:00
Jonas Maebe
79c70c52a7 * store/restore taddnode.resultrealdef to/from the ppufiles, and also
copy/compare it when copying/comparing taddnodes (necessary for inlined
    procedures, mantis #13596)

git-svn-id: trunk@13054 -
2009-04-27 21:03:11 +00:00
Jonas Maebe
8cae53bb18 * fixed errors with parsing negative, >$99 and invalid BCD numbers in
BCDToInt() (patch from Milla, mantis #13512)

git-svn-id: trunk@13052 -
2009-04-27 16:46:42 +00:00
Jonas Maebe
5b08047d1c * allow exlicit type conversions from class/interface to enums in Delphi
mode (mantis #11859)
  * cleaned up some superfluous "eq=te_incompatible" checks (probably from
    copy/pasting conditions from elsewhere)

git-svn-id: trunk@13050 -
2009-04-26 20:41:24 +00:00
Jonas Maebe
e2b8792bd3 * do not initialize global reference-counted variables in the automatic
initialization code of units/programs, because they are already
    zero and initializing them explicitly is Delphi-incompatible
    (mantis #13345)

git-svn-id: trunk@13042 -
2009-04-25 18:53:58 +00:00
Jonas Maebe
ca132e203f * treat typecast(register) the same as typecast([register]) in assembler
expressions (for Delphi compatibility, mantis #9327)

git-svn-id: trunk@13040 -
2009-04-25 15:37:38 +00:00
marco
704c0adbd0 * iconvenc now also with dynlinking separate. Some fixes for OS X 10.3 and Haiku ported from cwstring
git-svn-id: trunk@13038 -
2009-04-25 12:10:42 +00:00
Jonas Maebe
dbeb3e060f * fixed internalerror(2007120903) when using -Cfsse2 in case an unsigned
32 bit subrange type with high(subrange_type) <= high(longint) is
    converted to a float

git-svn-id: trunk@13037 -
2009-04-25 11:40:02 +00:00
Jonas Maebe
37a2cff8fb * fixed loading widestring constsym values from ppu files (mantis #13583)
* null-terminate loaded ansistring/resourcestring constants from ppu files

git-svn-id: trunk@13033 -
2009-04-24 21:36:01 +00:00
Jonas Maebe
e8edc31a89 * don't insert thousandseparator if it is #0 (mantis #13552, patch by
Jesus Reyes)

git-svn-id: trunk@13028 -
2009-04-23 19:16:49 +00:00
Jonas Maebe
10158da60e * give an error when trying to use the offset of a non-byte-aligned field
of a bitpacked record in assembler code
  * convert the offsets of byte-aligned fields of bitpacked records from bits
    to bytes (mantis #13563)

git-svn-id: trunk@13027 -
2009-04-23 17:27:44 +00:00
Jonas Maebe
2465126f60 * also check that nested procedures don't have any nested procedures
of their own that are marked as inline, instead of only doing so
    for non-nested procedures (mantis #13553)

git-svn-id: trunk@13025 -
2009-04-22 15:12:42 +00:00
Jonas Maebe
a4bf91001e * fixed location_free() for locations consisting of multiple
physical registers
  * free the physical return registers at the caller side for 64 bit
    systems
  * make sure that we do not double-free registers in case a return
    value is not used (mantis #13536)

git-svn-id: trunk@13023 -
2009-04-20 18:57:49 +00:00