* Reorganize ifdef GDB_VXYZ part
+ Add code for LIBGDB_HAS_GET_STDIN (possibly set in gen-gdblib-inc.sh script).
+ Use GDB_USE_XSTRVPRINTF conditional.
git-svn-id: trunk@23660 -
gvector.pp:
* more consistent formatting
- remove "inline" directives in implementation section
* use "Move" instead of a for-loop in Erase and Insert (while also respecting managed types) for performance improvement
* set the removed entry in PopBack to Default(T) (also for managed types)
* fix a bug in Erase which checked for "<= Size" instead of "< Size"
git-svn-id: trunk@23647 -
gvector.pp, TVector.TVectorEnumerator:
* the size of a vector is of type SizeUInt which is LongWord on 32 bit systems and QWord on 64 bit systems and which is in both cases not the same as Integer which is LongInt
+ add a boolean property to detect whether the first call to MoveNext was done
* check in MoveNext whether the first call was done and return approbiate results
gvector.pp, TVector:
+ declare GetEnumerator as inline as well
git-svn-id: trunk@23645 -
* Abort if attempting to emit a call without pi_do_call flag set, because the outgoing parameter area determines layout of temps and therefore cannot be created/changed during pass 2.
* Bypass g_concatcopy_move if procedure is a leaf one, due to the restriction mentioned above.
git-svn-id: trunk@23644 -
- Always use fresh native fpcmake executable.
- Build fresh native fpcmake executable when cross-compiling.
- Explicitly specify a compiler which is used to bootstrap fpmake and fpcmake. Always use fresh native compiler for that.
* New bootstrap target for fpcmake to build native fpcmake regardless of CPU/OS settings.
git-svn-id: trunk@23641 -
Of course this change does not help very much, because when data are loaded from file bidirectional is checked and exception is raised.
So IMO we should comment: //UniDirectional := TestUniDirectional, because in concept of save/load file we can not test unidirectional bufdataset.
git-svn-id: trunk@23640 -
* Disabled building of clocale, since it does not work anyway. A new android implementation is needed.
* Disabled building of x86 and ports units. They are useless on Android.
git-svn-id: trunk@23635 -
* Replaced assignment "has_errors:=true" by calling a new procedure SetHasErrors. It simplifies debugging - just set a breakpoint inside SetHasErrors and see the stack back trace to find out where the error has occurred.
git-svn-id: trunk@23633 -
assemble.pas, TExternalAssembler.WriteSourceLine:
* don't generate an internal error if no module is found; if the system unit is compiled with -al there can be cases when fileinfo contains only zeros (though I wonder where this comes from; I'll need to investigate this when I have time)
git-svn-id: trunk@23631 -
assemble.pas, TExternalAssembler.WriteSourceLine:
* also respect a module change which can happen if the generated assembler code belongs to a specialized generic
git-svn-id: trunk@23628 -
* Parameters passed in registers are no longer forced to stack, therefore assembler routines using 'lw' instruction to load such parameters must have it changed to 'move' (tb0072.pp).
git-svn-id: trunk@23627 -
ShiftShiftShift2ShiftShift tried to access a wrong and already freed
instruction the find out whatever a shift will result in a 0 result.
For some reason this only resulted in a bug on x86_64 linux host
crosscompiler builds.
git-svn-id: trunk@23624 -