Jump to content

Leaderboard


Popular Content

Showing content with the highest reputation on 07/06/22 in all areas

  1. Uwe Raabe

    MMX V15.1.1 released

    MMX V15.1.1 fixes some problems encountered with V15.1 and enhances the new directive aware parser. While evaluating IFDEFs was a long requested feature its actual implementation did raise some issues. One consequence of evaluating directives is that parts of the code are hidden from the MMX explorer. Only code that is embraced by conditions evaluating to True are taken into account in the explorer. F.i. a unit with this code: unit Example; interface {$IFDEF MYDEF} type TMyType = class public procedure MyProc; end; {$ENDIF} implementation {$IFDEF MYDEF} procedure TMyType.MyProc; begin end; {$ENDIF} end. will end up in an completely empty explorer. The only workaround in V15.1 was to place a {$DEFINE MYDEF} somewhere before the IFDEF to make MMX explorer see that class TMyType. Unfortunately that will also make the compiler see that class, which is probably not what you want. V15.1.1 offers two solutions to this (which can also be combined): The parser silently defines MMX. This allows to wrap the {$DEFINE MYDEF} inside an {$IFDEF MMX}/{$ENDIF}, so the compiler doesn't see it. The Project options page in the MMX Code Explorer properties dialog allows to have a special set of Defines and $IF Expressions used only by the MMX parser. Another unwanted effect in V15.1 was that the content of include files were added to the explorer, which was completely unintended, because they belong to another module (the include file). This has been fixed in V15.1.1 and the include file directives are added to the module section. A double click will open the file.
  2. OpenSSL has released new versions of the two supported branches, 3.0.5 and 1.1.1q, Windows binaries are available from http://wiki.overbyte.eu/wiki/index.php/ICS_Download or https://www.magsys.co.uk/delphi/magics.asp . OpenSSL 3.0.5 fixes a serious bug on some X86_64 CPUs in 3.0.4, a version we never released. Also a moderate security bug relating to AES OCB encryption, but this is not used by TLS ciphers. Also a moderate security bug with the c_rehash script that allows command injection, we don't use that either. OpenSSL 1.1.1q fixes the AES OCB and c_rehash bugs. Separately YuOpenSSL has released both these versions as commercial DCUs allowing applications to be used with OpenSSL without needing separate DLLs. Angus
  3. Sorry for sounding blatant, but it seems you are doing something you shouldn't do. Unfortunately we can't see what it is.
  4. Lars Fosdal

    64 bit shift operations?

    Maybe you need to cast the 1 to uint64 too? Edit: Checked - It works with function bit(idx,value: uint64): Boolean; begin Result := ((uint64(1) shl idx) and value) <> 0; end;
  5. Could it be that you have PrimaryForm.Visible = True in the Object Inspector?
  6. Vandrovnik

    Strange behavior for literals

    When I compile in 10.3.3., I get this (even when optimization disabled):
×