is real before transforming a multiply into an sqr operation (fixes make
cycle after r18252, don't know where or even how it caused a wrong
optimization)
git-svn-id: trunk@18257 -
change in utils/fpcm/fpcmake.ini in prevous commit.
Adapt also other files to that change:
* compiler/globals.pas: Replace $FPCTARGET by os_string if
tf_use_8_3 flag is set for target_info also.
* tests/Makefile.fpc: Modify TEST_TARGETSUFFIX in the same way
as TARGETSUFFIX was modified in previous commit.
* tests/utils/dotest.pp:
+ New variable UseOSOnly, set to true if only target OS name
should be used for subdirectories.
git-svn-id: trunk@18228 -
- memory usage of a compiler compilation increases by approx. 2 per cent due to this
- actually docs say avx has operations with 5 parameter, however I were not able to find
an instruction having 5 operands
git-svn-id: trunk@18202 -
* Disallow simultaneous use of method resolution and delegation for the same interface. An interface with method resolution must be implemented directly. This is Delphi compatible and resolves#18058.
git-svn-id: trunk@18179 -
overridden method, rather than to any method that can accept similar
parameters as the current one (Delphi-compatible, and corresponds to
what is described in our documentation)
* do not flag "inherited" call nodes that are not "anonymous inherited"
calls using the cnf_anon_inherited flag
git-svn-id: trunk@18162 -
so a proper error message is written (resolves#19871),
EOutOfMemory is not handle perfectly because it could be that the exception
handling requires again a memory allocation
git-svn-id: trunk@18132 -
the methodpointer of a call, transform it into a call to the classclass
method because otherwise it can be used before the first call to any
method of the class (such as in the packages/cocoaint/src/IvarSize test)
and this can result in crashes
git-svn-id: trunk@18124 -
* Do not initialize unused symbols, because finalization code is not generated for them either.
* Always initialize/finalize such constants, even if they are declared in {$J-} state and cannot be modified by user code.
git-svn-id: trunk@18121 -
* when creating a child class, ignore the padding added to the parent
in case of objcclasses (gcc/clang also do that; maybe the same
has to be done for cppclass as well)
-> objcclass layouts seem to finally completely match the gcc ones
git-svn-id: trunk@18119 -
* save/restore tabstractrecordsymtable.datasize as asizeint instead of
aint (not ppu version change because they are the same on all
production targets)
* add shortint() typecasts when reading/writing fieldalignment/
recordalignment fields
git-svn-id: trunk@18118 -
because it influences the offset at which the next field in child classes
should be placed in case it also uses C_alignment
* also pad objectdefs based on the packrecords setting (Delphi-compatible)
-> field offset calculation in objcclasses is now correct if they are
compiled with {$packrecords c}
git-svn-id: trunk@18114 -
The old linker option to accept object files from all subarchitecture
types no longer works.
+ support for subarchitectures in fcl-res/fpcres
git-svn-id: trunk@18070 -
link against Xcode 3.2.6/4-generated code for ARMv7 -- use -Cparmv7,
but note that you also have to compile the RTL and all other units with
this option for them to be linkable against other ARMv7 code when using
those tools)
git-svn-id: trunk@18069 -
(this tempinitcode contains a reference to the tempcreatenode itself
-> hookoncopy must be set before copying the tempinitnode)
git-svn-id: trunk@18016 -