Commit Graph

46381 Commits

Author SHA1 Message Date
michael
1c5da41b48 * Warn-no-node correctly passed on
git-svn-id: trunk@31230 -
2015-07-26 08:09:11 +00:00
michael
66f4d0bc4e * Handle consts in records
git-svn-id: trunk@31229 -
2015-07-26 08:05:34 +00:00
michael
07c26c1754 * Change name handling for operators
git-svn-id: trunk@31228 -
2015-07-26 08:05:12 +00:00
michael
e4cd8565ae * Parse operators better
git-svn-id: trunk@31226 -
2015-07-24 08:52:34 +00:00
lacak
3d6a6512ad fcl-db: odbc: add support for stIndexes for database metadata retrieval SetSchemaInfo()
git-svn-id: trunk@31225 -
2015-07-24 05:38:26 +00:00
michael
8600940c26 * Initialize and finalize
git-svn-id: trunk@31224 -
2015-07-23 18:52:33 +00:00
Károly Balogh
eb3bd4648c amicommon: actually, not all filesystems (FTPMount, for example) support the ExamineFH method, so fall back to double-seek in that case
git-svn-id: trunk@31223 -
2015-07-23 18:43:37 +00:00
marco
4e6f673a6d * patch from #27919, enabling resources for gba, fixing fcl-base build.
git-svn-id: trunk@31221 -
2015-07-23 11:32:07 +00:00
lacak
61c451b391 fcl-db: mysql: add MySQL57Connection. Requires rev.31218.
(Tested with MySQL Server 5.7.7 RC)

git-svn-id: trunk@31220 -
2015-07-23 10:27:29 +00:00
florian
40eec2f249 * fix clinfo.pp for 64 Bit targets, patch by Thaddy de Koning, resolves #28405
git-svn-id: trunk@31219 -
2015-07-22 19:54:07 +00:00
michael
4442ecc863 * Added MySQL 5.7 header translation from Laco (bug ID 28417)
git-svn-id: trunk@31218 -
2015-07-22 18:59:41 +00:00
lacak
433d0ce4f6 fcl-db: sqlite: always call InitializeSQLite to properly increment library loading/unloading ref-counting. Regression introduced in rev.27342. Bug #28391
git-svn-id: trunk@31215 -
2015-07-16 08:03:38 +00:00
pierre
dc06f85b58 Set ALLOW_WARNINGSS to 1 for m68k and avr compiler to allow successful fullinstall completion
git-svn-id: trunk@31214 -
2015-07-15 15:27:27 +00:00
pierre
56859175c9 Add support for DragonFly OS
git-svn-id: trunk@31213 -
2015-07-14 22:05:34 +00:00
pierre
780c54c8b4 Add support for DragonFly OS
git-svn-id: trunk@31212 -
2015-07-14 22:05:03 +00:00
pierre
1bfef577e6 Add DragonFly code
git-svn-id: trunk@31211 -
2015-07-14 22:03:13 +00:00
pierre
014d2f805d Use /libexec/ld-elf.so.2 as dynamic linker for DragonFly OS
git-svn-id: trunk@31210 -
2015-07-14 21:59:23 +00:00
pierre
f08fa883e2 Pipe syscall for DragonFly also uses EAX:EDX for result, like FreeBSD
git-svn-id: trunk@31209 -
2015-07-14 21:58:27 +00:00
pierre
b67b407d2d Add call to _init_tls and _rtld_call_init functions for x86_64 DragonFly target startup
git-svn-id: trunk@31208 -
2015-07-14 21:56:55 +00:00
pierre
0c011c9313 Add DragonFly specific OS_XXX defines
git-svn-id: trunk@31207 -
2015-07-14 21:54:19 +00:00
michael
d900f4a29f * Added support for class methods/properties in records
git-svn-id: trunk@31205 -
2015-07-12 07:25:08 +00:00
pierre
960a72f821 Use AnsiString and sysutils GetEnvironmentVariable function to avoid truncation of PATH to 255 chars
git-svn-id: trunk@31202 -
2015-07-11 13:59:06 +00:00
Jonas Maebe
9118146bc1 * ensure that managed out-parameters are processed before any other
parameters:
   1) since they are finalised on the caller side, if that same value
      is passed as a value parameter as well and its reference count
      was 1, then the value parameter will contain an invalid pointer
   2) since finalisation involves a call, for optimal code generation
      purposes they should also be evaluated first
    (mantis #28279, #28390)

git-svn-id: trunk@31201 -
2015-07-10 22:04:35 +00:00
lacak
a2b7b9cd6e fcl-db: odbc: experimental support for XML and sql_variant SQL Server data types
git-svn-id: trunk@31200 -
2015-07-08 13:00:59 +00:00
Jonas Maebe
5f21d6df93 * enable -godwarfsets by default
git-svn-id: trunk@31199 -
2015-07-07 17:12:31 +00:00
Jonas Maebe
945fd4fcf5 * wait till the end of typecheckpass before we load a call context's self
parameter instead of immediately doing it in the constructor of the call
  node, and then only create it if we actually need it.

  It was previously created in the call node constructor because it needs to be
  done before pass_1 (which is where it is actually used) due to pass_1 possibly
  being performed in the context of inlining (and then a wrong self parameter
  may be found, or none at all), and it was done unconditionally because at that
  point we don't know yet whether or not a self parameter will be necessary (as
  we haven't resolved the overloads/procdef yet).

  The problem with this is that if we use the parentfpstruct way of handling
  accesses to outer scope locals/parameters, we need to know all locals/
  parameters that will be accessed from nested routines after typecheckpass,
  otherwise we get crashes. The problem was that if a call to an RTL routine was
  generated by the compiler in a routine nested inside a method during pass_1,
  and this nested routine itself did not access self of the method (so self was
  not added to its parentfpstruct during the typecheckpass), then the
  unconditional reference to self when creating the call caused a compiler
  crash (introduced in r30908)

git-svn-id: trunk@31197 -
2015-07-07 16:34:14 +00:00
Jonas Maebe
5d15a28e75 - reverted workaround from r15939 that hasn't been necessary since FPC 2.6.0,
since that version already shiped with GNU AS 2.21 (mantis #17337)

git-svn-id: trunk@31196 -
2015-07-06 08:05:37 +00:00
florian
ba1297b1ab + provide also 8 and 16 bit div/mod helper
* tmoddivnode.first_moddivint does not force a 32 bit helper, the used helper depends now on the resultdef type set by tmoddivnode.pass_typecheck

git-svn-id: trunk@31195 -
2015-07-05 20:16:50 +00:00
florian
cf64e05c6f * use generic mod/div code for avr
git-svn-id: trunk@31194 -
2015-07-05 17:05:43 +00:00
Jonas Maebe
af2c7bf00f * don't perform CSE on typeconversion nodes inserted for absolute
references, or anything below them (mantis #27210)

git-svn-id: trunk@31193 -
2015-07-04 22:28:31 +00:00
Jonas Maebe
1bcc276dcf * remove implicit typecast to extended automatically inserted for trunc/round
(due to the declaration in the system unit) on x86_64 if this allows us
    to use SSE code instead (mantis #28366)

git-svn-id: trunk@31192 -
2015-07-03 21:01:18 +00:00
Jonas Maebe
fa1ac2515e * don't look for overloaded operators in case of internally generated
type conversions (mantis #28375)

git-svn-id: trunk@31191 -
2015-07-03 20:19:48 +00:00
Jonas Maebe
ee87d3bba9 * fixed "case <string> of" with multiple labels for a single statement after
r30855 (mantis #28372)

git-svn-id: trunk@31190 -
2015-07-03 20:04:25 +00:00
Jonas Maebe
e9d2eb6cff * fixed a_load_reg_reg() when storing an array/record to another
array/record type (can happen for parameters/function results
    that got a different type for ABI reasons)

git-svn-id: trunk@31189 -
2015-07-03 20:04:22 +00:00
Jonas Maebe
36e5291d94 * converted tcgguidconstnode.pass_generate_code to use the high level typed
constant builder

git-svn-id: trunk@31188 -
2015-07-03 20:04:18 +00:00
Jonas Maebe
7a8b5fd6c5 * several fixes for emitting aggregate typed constants with C/ABI packing:
o don't emit explicit padding bytes (LLVM adds them)
   o don't mark them in LLVM as packed either

git-svn-id: trunk@31187 -
2015-07-03 20:04:15 +00:00
Jonas Maebe
4edb6e68fd * fixed emitting Pascal extended typed constants inside aggregates for llvm
(have to be emitted as arrays of bytes to ensure they don't take up
     more than 10 bytes)

git-svn-id: trunk@31186 -
2015-07-03 20:04:11 +00:00
michael
0958ff80de * Fix bug #28364
git-svn-id: trunk@31185 -
2015-07-01 19:57:10 +00:00
michael
8cb651c0a5 * Correct documenting of advanced records
git-svn-id: trunk@31184 -
2015-07-01 19:44:47 +00:00
michael
a5715c078b * Better parsing and declaration of record types
git-svn-id: trunk@31183 -
2015-07-01 19:44:17 +00:00
michael
770ad238f4 * Added Fail and TypeOf routines
git-svn-id: trunk@31182 -
2015-07-01 19:42:02 +00:00
Károly Balogh
7eb05ba2ab AROS: use BPTR type as filehandle. BPTR is now PtrInt instead of a Pointer, because it's usually not directly referenceable, and that allows interoperability with THandle type
git-svn-id: trunk@31181 -
2015-06-29 23:11:02 +00:00
Károly Balogh
0d1c85a095 Amiga-likes: support unit_env environment variable for unit paths
git-svn-id: trunk@31180 -
2015-06-29 21:42:40 +00:00
Károly Balogh
a5abd4acd7 AROS/x86_64: fixed resources to use res_elf, set default stacksize for the more sensible 1MB instead of 8MB
git-svn-id: trunk@31179 -
2015-06-29 21:30:53 +00:00
Károly Balogh
02b9b1743e AROS/x86_64: fixed linker support by removing duplicated code and unifying it with i386
git-svn-id: trunk@31178 -
2015-06-29 21:28:51 +00:00
Károly Balogh
77bdd83bfc AROS/x86_64: regenerated Makefiles
git-svn-id: trunk@31177 -
2015-06-29 00:09:06 +00:00
Károly Balogh
eda311c0b3 arosunits: add some temporary kludge so it compiles at least on x86_64
git-svn-id: trunk@31176 -
2015-06-28 23:58:15 +00:00
Károly Balogh
32120a47f4 amicommon/sysutils: use THandle instead of Longint
git-svn-id: trunk@31175 -
2015-06-28 23:38:37 +00:00
Károly Balogh
c704b4b918 amicommon/sysfile.inc: use THandle instead of LongInt
git-svn-id: trunk@31174 -
2015-06-28 23:36:09 +00:00
Károly Balogh
51a6c217c7 amicommon/dos: some warning fixes - use PtrInt instead of LongInt; do not check for less than zero values in unsigned variables
git-svn-id: trunk@31173 -
2015-06-28 23:12:41 +00:00