------------------------------------------------------------------------
r42337 | laksen | 2019-07-07 14:37:45 +0000 (Sun, 07 Jul 2019) | 1 line
- Fix result type of SizeOf and BitSizeOf to use sizesint instead of sint.
------------------------------------------------------------------------
--- Merging r42337 into '.':
U compiler/ninl.pas
U compiler/pexpr.pas
--- Recording mergeinfo for merge of r42337 into '.':
U .
git-svn-id: branches/fixes_3_2@43514 -
U compiler/blockutl.pas
U compiler/jvm/njvmutil.pas
U compiler/jvm/pjvm.pas
U compiler/ncal.pas
U compiler/ninl.pas
U compiler/pdecl.pas
U compiler/pdecsub.pas
U compiler/pdecvar.pas
U compiler/pexpr.pas
U compiler/pgenutil.pas
U compiler/pmodules.pas
U compiler/pparautl.pas
U compiler/pstatmnt.pas
U compiler/psub.pas
U compiler/psystem.pas
U compiler/ptype.pas
U compiler/symcreat.pas
U compiler/symdef.pas
U compiler/symsym.pas
U compiler/symutil.pas
--- Recording mergeinfo for merge of r42998 into '.':
U .
--- Merging r43116 into '.':
G compiler/symsym.pas
A tests/webtbf/tw36114.pp
--- Recording mergeinfo for merge of r43116 into '.':
G .
# revisions: 42998,43116
git-svn-id: branches/fixes_3_2@43442 -
U rtl/inc/objc.pp
--- Recording mergeinfo for merge of r41243 into '.':
U .
--- Merging r41335 into '.':
U compiler/arm/cgcpu.pas
U compiler/cgobj.pas
--- Recording mergeinfo for merge of r41335 into '.':
G .
--- Merging r41422 into '.':
U compiler/scanner.pas
--- Recording mergeinfo for merge of r41422 into '.':
G .
--- Merging r41474 into '.':
U compiler/pexpr.pas
A tests/webtbf/tw35149a.pp
A tests/webtbs/tw35149.pp
--- Recording mergeinfo for merge of r41474 into '.':
G .
--- Merging r41650 into '.':
U compiler/aarch64/racpugas.pas
--- Recording mergeinfo for merge of r41650 into '.':
G .
--- Merging r41651 into '.':
U tests/test/taarch64abi.pp
--- Recording mergeinfo for merge of r41651 into '.':
G .
--- Merging r41905 into '.':
U compiler/utils/ppuutils/ppudump.pp
--- Recording mergeinfo for merge of r41905 into '.':
G .
git-svn-id: branches/fixes_3_2@41943 -
U packages/fcl-stl/src/gset.pp
--- Recording mergeinfo for merge of r39785 into '.':
U .
--- Merging r39786 into '.':
A tests/tbs/tb0651.pp
U compiler/symdef.pas
--- Recording mergeinfo for merge of r39786 into '.':
G .
--- Merging r39787 into '.':
U compiler/pexpr.pas
A tests/webtbs/uw34287a.pp
A tests/webtbs/tw34287.pp
A tests/webtbs/uw34287b.pp
--- Recording mergeinfo for merge of r39787 into '.':
G .
--- Merging r39788 into '.':
U compiler/nbas.pas
--- Recording mergeinfo for merge of r39788 into '.':
G .
--- Merging r39812 into '.':
G compiler/pexpr.pas
--- Recording mergeinfo for merge of r39812 into '.':
G .
# revisions: 39785,39786,39787,39788,39812
git-svn-id: branches/fixes_3_2@39835 -
+ added test
* adjusted test tw9673 which should have never worked as is (what if TList would have been "of T" instead of "of byte"?)
git-svn-id: trunk@36468 -
* compinnr.inc include file converted to a unit
* inline number field size stored in ppu increased from byte to longint
* inlines in the parse tree (when written with the -vp option) now printed with
their enum name, instead of number
git-svn-id: trunk@36174 -
Since overloading compilerprocs does not work each procedure got its own unique name, but they are using the new compilerproc extension to map them to the Insert and Delete symbol so that error messages can be shown with the respective name for the procedure declarations instead of fpc_shortstr_delete for example.
git-svn-id: trunk@33895 -
pexpr.pas:
* handle_factor_typenode: rework code for records and objects so that Delphi style specializations are handled as well
* sub_expr.generate_inline_specialization: also do a typecheck pass on pload to be sure that we have a resultdef
+ added tests
git-svn-id: trunk@33876 -
pexpr.pas, sub_expr.generate_inline_specialization:
* do_member_read() needs to happen independently of whether we're calling a method of the same object (was incorrectly copypasted code... :/ )
+ added test
git-svn-id: trunk@33875 -
The result type of the intrinsic is determined by the Then-expression to provide a bit of control. There might however be some situations in which this fails, for this exceptions need to be added (e.g. a constant string needs to be converted to a normal string).
compinnr.inc:
+ add new constant in_ifthen_x_y_z for the IfThen() intrinsic
psystem.pas:
+ create_intern_symbols: add symbol for IfThen() intrinsic
pexpr.pas:
* statement_syssym: parse parameters of IfThen() intrinsic and return corresponding inline node
ninl.pas, tinlinenode:
+ new method handle_ifthen() which converts the inline node to an if-node which assigns the expressions to a temp node that is returned
* pass_typecheck: handle in_ifthen_x_y_z using handle_ifthen()
* pass_1: in_ifthen_x_y_z does not need a first pass as it's already converted after the typecheck pass
+ added tests
git-svn-id: trunk@33036 -
support for nested types when generating an access to a static fied;
we also always do that when generating the mangled name of a static
field declaration in symcreat.make_field_static() (mantis #29030)
git-svn-id: trunk@32517 -
+ new constant inline_specialization_block_types to easily keep track of block types in which inline specialization is allowed
pexpr.pas:
* use new inline_specializatio_block_types instead of a inline constant set
git-svn-id: trunk@32388 -