svenbarth
fcc1ce7a08
* fix for Mantis #30344 : applied patch by Mario Ray Mahardhika to add new command line option -Sj[-|+] to control writeable typed constants (with a small adjustment to the help text)
...
+ added test
git-svn-id: trunk@37437 -
2017-10-09 19:19:23 +00:00
michael
656405d7dc
+ Added QR code generator, image drawer
...
* QR Code generator code translated from C code from Project Nayuki (http://nayuki.io )
(reused with permission)
* Translated demo app from project Nayuki
* Added sample QR code generator demo app
git-svn-id: trunk@37436 -
2017-10-09 19:17:26 +00:00
michael
f218a369d6
* Remove debug writeln
...
git-svn-id: trunk@37435 -
2017-10-09 19:13:20 +00:00
Mattias Gaertner
bc6b6fe7c9
fcl-passrc: resolver: fixed CheckClassIsClass if DestType is forward class
...
git-svn-id: trunk@37434 -
2017-10-09 11:08:31 +00:00
Mattias Gaertner
061c0b4da3
pastojs: test raise functioncall
...
git-svn-id: trunk@37433 -
2017-10-09 10:44:35 +00:00
Mattias Gaertner
40b359c1ba
fcl-passrc: resolver: raise functioncall
...
git-svn-id: trunk@37432 -
2017-10-09 10:44:15 +00:00
michael
243002023c
* Patch from Markus Beth to fix some comments
...
git-svn-id: trunk@37431 -
2017-10-09 08:31:12 +00:00
nickysn
d96558cd64
* fixed bug in assembling some 32-bit instructions on the i8086 target (e.g.
...
mov dword ptr [something], ebx)
git-svn-id: trunk@37430 -
2017-10-08 11:10:42 +00:00
svenbarth
f6a867ef04
* move handling of Concat to tinlinenode so that it can be easily extended for dynamic arrays
...
+ added test
git-svn-id: trunk@37429 -
2017-10-08 10:39:34 +00:00
svenbarth
c01b36a2fa
* the checks for no parameters are not needed for Insert() and Delete() as they take care of that themselves with an overload listing
...
git-svn-id: trunk@37428 -
2017-10-08 10:37:30 +00:00
michael
9d32f87ebb
* Added license statement
...
git-svn-id: trunk@37427 -
2017-10-08 09:39:03 +00:00
svenbarth
fe95d73fe5
* move RTTI header include above ObjPas header include
...
git-svn-id: trunk@37426 -
2017-10-08 08:44:51 +00:00
michael
43867344cd
* Demo how to create pdf from text file
...
git-svn-id: trunk@37425 -
2017-10-08 08:29:05 +00:00
svenbarth
a0fb85b690
- remove no longer needed aligntoptr() and aligntoqword() functions (all this should be handled by the typinfo unit in the future)
...
git-svn-id: trunk@37424 -
2017-10-07 22:08:05 +00:00
svenbarth
89645633a9
* get rid of calls to aligntoptr by using methods provided by TClassData and TPropInfo
...
git-svn-id: trunk@37423 -
2017-10-07 22:02:40 +00:00
svenbarth
da30391a6a
* FillChar for the properties is not needed as SetLength already initializes the array elements
...
git-svn-id: trunk@37422 -
2017-10-07 21:51:18 +00:00
svenbarth
57db4b47e1
- remove unneeded type declaration
...
git-svn-id: trunk@37421 -
2017-10-07 21:44:51 +00:00
svenbarth
1ae344394a
+ add data record for easier access to a class' data
...
git-svn-id: trunk@37420 -
2017-10-07 21:40:42 +00:00
florian
3d3298f64d
* write absolute references correctly on avr, resolves #32040
...
git-svn-id: trunk@37419 -
2017-10-07 21:09:20 +00:00
svenbarth
d9bc656852
* use new pool functionality for property instances
...
* extended test
git-svn-id: trunk@37418 -
2017-10-07 17:32:28 +00:00
svenbarth
1cbb4266d7
* rework Rtti pool so that non-types (e.g. properties, etc.) can be stored as well based on their handle
...
git-svn-id: trunk@37417 -
2017-10-07 16:36:48 +00:00
svenbarth
f8d919970a
* since the property data is different for records, classes and interfaces they need to be handled by the concrete Rtti type (currently only TRttiInstanceType) and not the general TRttiType type
...
git-svn-id: trunk@37416 -
2017-10-07 15:40:38 +00:00
svenbarth
29eb742ded
* move aligntoptr() and aligntoqword() further up so they can be used by other code as well
...
git-svn-id: trunk@37415 -
2017-10-07 15:33:22 +00:00
svenbarth
49fc13ea73
* move Handle property to TRttiObject (Delphi compatible and is probably also used for the caching mechanism)
...
git-svn-id: trunk@37414 -
2017-10-07 15:10:23 +00:00
svenbarth
4489163620
* declare TRttiObject as abstract
...
git-svn-id: trunk@37413 -
2017-10-07 15:05:22 +00:00
svenbarth
c35f694fb8
- remove unused local type
...
git-svn-id: trunk@37412 -
2017-10-07 14:59:33 +00:00
florian
4cf2a2672a
changes to fix #32043
...
* changed most of the variables in the assembler readers used to store constants from aint to tcgint
as aint has only the size of the accumular while some CPUs (AVR) allow larger constants in instructions
+ allow access to absolute symbols with address type in inline assembler
* allow absolute addresses in avr inline assembler
+ tests
git-svn-id: trunk@37411 -
2017-10-06 21:07:19 +00:00
nickysn
8ba4de3885
+ test lea with non-native address sizes (16-bit on i386, 32-bit on x86_64)
...
git-svn-id: trunk@37410 -
2017-10-06 15:46:03 +00:00
nickysn
92a52a9f4d
+ implemented support for instructions with non-native address size on i8086
...
(16-bit and 32-bit), i386 (16-bit and 32-bit) and x86_64 (32-bit and 64-bit).
Known bug: 32-bit addresses with an offset have their offset truncated to its
low 16-bits on i8086
git-svn-id: trunk@37409 -
2017-10-06 15:27:14 +00:00
svenbarth
bfd37969ad
* move TRttiStructuredType and TRttiInstanceType further down as they need access to TRttiMember and its children
...
git-svn-id: trunk@37408 -
2017-10-06 13:10:01 +00:00
nickysn
8589b946fc
* different versions (behind cpu specific ifdefs) of process_ea_ref renamed
...
process_ea_ref_64_32, process_ea_ref_32 and process_ea_ref_16, indicating
the address size they support; this is done, so that in the future, we can
mix them all on the same x86 architecture and support multiple address sizes
git-svn-id: trunk@37407 -
2017-10-05 22:15:26 +00:00
Mattias Gaertner
5534acd097
fcl-passrc: resolver: fixed with-do-inherited
...
git-svn-id: trunk@37406 -
2017-10-05 22:14:41 +00:00
Mattias Gaertner
40717326bc
fcl-passrc: resolver: error message on array of const
...
git-svn-id: trunk@37405 -
2017-10-05 21:57:31 +00:00
Mattias Gaertner
facd1f5002
fcl-passrc: resolver: class-of constant
...
git-svn-id: trunk@37404 -
2017-10-05 21:49:36 +00:00
Mattias Gaertner
a7265432eb
fcl-passrc: resolver: allow different arg names in override methods
...
git-svn-id: trunk@37403 -
2017-10-05 21:35:09 +00:00
svenbarth
0c8f670ee0
+ add TRttiPointerType
...
* extend Rtti test
git-svn-id: trunk@37402 -
2017-10-05 21:10:30 +00:00
svenbarth
5c85e94919
+ add TRttiNamedObject.Handle property of which the getter needs to be overridden in each sub class
...
git-svn-id: trunk@37401 -
2017-10-05 21:06:47 +00:00
nickysn
31c9214884
* replaced R_SUBADDR with the appropriate size (R_SUBW, R_SUBD or R_SUBQ) in
...
the cpu specific process_ea_ref function
git-svn-id: trunk@37400 -
2017-10-05 20:39:32 +00:00
Mattias Gaertner
204ef5ac01
pastojs: fixed using type alias
...
git-svn-id: trunk@37399 -
2017-10-05 13:22:55 +00:00
Mattias Gaertner
a8fed34f99
pastojs: implemented resourcestrings
...
git-svn-id: trunk@37398 -
2017-10-04 19:43:13 +00:00
Mattias Gaertner
fe27ec2a26
fcl-passrc: resolver: check resourcestring expression
...
git-svn-id: trunk@37397 -
2017-10-04 19:42:56 +00:00
Mattias Gaertner
a70a1989e5
fcl-passrc: resolver: if varofaliasofclassof=typeofaliasofclassof
...
git-svn-id: trunk@37396 -
2017-10-04 16:42:43 +00:00
Mattias Gaertner
35f7b9fcf6
pastojs: fixed class-of-aliastype
...
git-svn-id: trunk@37395 -
2017-10-04 14:46:02 +00:00
Mattias Gaertner
aa1eed7b20
fcl-passrc: resolver: fixed class-of-aliastype
...
git-svn-id: trunk@37394 -
2017-10-04 14:37:53 +00:00
Mattias Gaertner
5fc3bbba12
pastojs: implemented logical xor
...
git-svn-id: trunk@37393 -
2017-10-04 12:26:22 +00:00
Mattias Gaertner
203c723bc3
fcl-passrc: resolver+useanalyzer: implemented resourcestring
...
git-svn-id: trunk@37392 -
2017-10-04 12:21:55 +00:00
Mattias Gaertner
48024645f0
pastojs: fixed property index value path
...
git-svn-id: trunk@37391 -
2017-10-04 00:53:00 +00:00
florian
cc44328109
* correctly calc case label distance after r36362, resolves #32115 and #32311
...
git-svn-id: trunk@37390 -
2017-10-03 20:36:09 +00:00
Mattias Gaertner
58454f555a
pastojs: implemented funcname:=
...
git-svn-id: trunk@37389 -
2017-10-03 16:08:59 +00:00
Mattias Gaertner
abd8907939
fcl-passrc: resolver: implemented funcname:=
...
git-svn-id: trunk@37388 -
2017-10-03 16:07:17 +00:00