- also removed three SetWindowTitles() wrappers which can't be fixed properly and encourage bad programming
- hinted some short macro-replacement functions as inline
git-svn-id: trunk@30984 -
- don't use the already deprecated and broken-by-design PasToC unit
- removed an of overlay functions which was conceptually broken and dangerous. If anything ever used it, that code must be fixed.
- marked some simple macros as inline
git-svn-id: trunk@30981 -
- don't use the already deprecated and broken-by-design PasToC unit
- removed a bunch of overlay functions which were conceptually broken and dangerous. If anything ever used them, that code must be fixed.
- fixed SetArgStr return value to be PChar instead of a LongBool
git-svn-id: trunk@30980 -
adjust the parameter comparison code to ignore types of $vmt parameters
when comparing (previously they were all voidpointer and hence also
equal)
git-svn-id: trunk@30955 -
class, which conflicts with java.lang.System in recent jdk javac's
(and we don't access any of the RTL classes explicitly in the
test program)
git-svn-id: trunk@30952 -
type-safe way (for LLVM, and also internal consistency checking between
the VMT as generated in nobj.pas and ncgvmt.pas)
o also converted the VMT validity checking to the node level
git-svn-id: trunk@30950 -
correct type since quite a while)
o exceptions:
o objects/records (self is a "var" parameter there, and sometimes
we want to load it as a pointer to an object instead
o Objective-C class methods, where self has to be id (to have a signature
compatible with what Objective-C compilers generate), but when loading
it we want a classrefdef of the current class for type check and
method resolving
git-svn-id: trunk@30949 -
* create separate nodes for Objective-C in tloadvmtaddrnode.pass_1
instead of implicitly relying on the fact that the Objective-C
ISA field is at the same offset as the VMT of Object-Pascal
classes
o translate the resulting loads of ISA field into direct pointer
accesses, so that even on non-fragile ABI platforms we don't
go via an indirection (like clang/gcc)
git-svn-id: trunk@30947 -
undefined references to RTTI for some of the fields, and we don't need
it anyway because these types are not user-visible and we don't generate
variables of these types)
git-svn-id: trunk@30945 -
- reworked exit syncronization/waiting. now uses signalsemaphores instead of messaging. this avoids the requirement for an extra message port per thread, which caused signal shortages earlier.
- additional cleanups
- now try to free up "leaked" resources on exit
git-svn-id: trunk@30933 -