Delphi Programming

Please make inline vars usable for production – fix RSP-28892

With the arrival of Delphi Rio 10.3 in October 2018 we saw “a very handy feature to the language, local inline variables with local scope and type inference” [Marco Tech Blog]. That was a feature “long overdue” [Comment section] and helped to push the Delphi language a little bit further. We’ve been very excited about this feature helping us writing code we’re all used to in other languages especially those used in for-loops:

or even more simplified to

As soon as the ISO/Web installer hit the download section we grabbed it, installed it… and have been hit hard in the face by CodeInsight (or whatever that feature is called) with not recognizing that simple code above as a valid Delphi code – which (not only) prevents working of not just the “Find declaration” but all of the source code productivity features as well. Ok, it was the first release of a new language feature, so well, we could wait for the next release which surely would fix that (there was an entry already in the Quality portal opened during the beta release…*sigh*).

Then came Delphi 10.3.1 in February 2019 – downloaded, installed, nothing changed, bug still there.

Then came Delphi 10.3.2 in July 2019 – downloaded, installed, nothing changed, bug still there.

Then came Delphi 10.3.3 in November 2019 – downloaded, installed, nothing changed, bug still there.

Then came Delphi 10.4 in May 2020 – downloaded, installed – oh yes, the inline vars aren’t tagged as error, but Go-to-definition nor Refactoring won’t work, thus bug still there.

The “fun” part is, while commenting both releases with the same request on fixing the RSP, all of the MVPs (including Marco) decided to delete (or not to publish) my comment about my request on fixing that bug. Not cool.

So here I am again – more than 600 days after the introduction of the new feature – begging for a fix so we could use that new feature. Please fix (latest RSP submitted):

RSP-28892 “Find Declaration” won’t work if inline vars are used

Thank you.

Tags: ,

MOS6502-delphi – a MOS 6502 CPU emulator for Delphi

This is the Delphi / Pascal port of the C++ implementation for the MOS Technology 6502 CPU by Gianluca Ghettini. The code is written to be more readable than fast, however some minor tricks have been introduced to greatly reduce the overall execution time. › Continue reading

Tags:

Pass a multidimensional array as a parameter (with a hidden caveat)

Monday, August 1st, 2016 | Delphi Programming | 4 Comments

How to pass a multidimensional array as a parameter? Long ago this question was answered on Stack Overflow with a simple answer: make a specific type for your array. But there is a hidden caveat… › Continue reading

Tags:

Behavior3 client library for Delphi (Behavior Trees for Delphi)

Friday, July 1st, 2016 | AI, Delphi 10.1 Berlin, Delphi Programming | 6 Comments

behavior3delphi is a Behavior3 client library for Delphi (Behavior Trees for Delphi) based on behavior3js.
› Continue reading

Tags:

LibBLP v1.0 – A BLP image reader library for Delphi 10.1 Berlin+ with DXT3/5 decompression support

Thursday, June 16th, 2016 | Delphi 10.1 Berlin, Delphi Programming | 2 Comments

LibBLP v1.0 – A BLP image reader library for Delphi 10.1 Berlin+ for

  • Palettized and uncompressed images and with
  • DXT1 / DXT3 and DXT5 decompression support
    › Continue reading

Tags:

How to fix the “api-ms-win-crt-runtime-l1-1.0.dll is missing” error for Delphi 10 Seattle

Tuesday, September 1st, 2015 | Delphi 10 Seattle, Delphi Programming | 113 Comments

If you experience this error during the start of Delphi 10 Seattle

d10_error

This error is not related to Delphi 10 Seattle – it is caused by TortoiseSVN v1.9 which is “side loaded” during start up (if installed before). Delphi 10 Seattle just works out of the box!

you need to (re)install the Visual C++ Redistributable for Visual Studio 2015, either via Windows Update or download and directly install the Visual C++ Redistributable: › Continue reading

Tags:

VerySimple.Lua 2.0 – a cross-platform Lua 5.3.0 wrapper for Delphi XE5-10.1 Berlin

Wednesday, February 18th, 2015 | Delphi Programming, Delphi XE7, iOS, Lua, Mac OS X | 64 Comments

VerySimple.Lua is a Lua 5.3 binding for Delphi XE5- 10.1 Berlin which automatically creates OOP callback functions for Win32, Win64, Mac OS X, iOS and Android.
› Continue reading

Tags: , ,

Delphi XE7 and iOS error “Unable to mount developer image (e800000e)”

Friday, October 17th, 2014 | Delphi Programming, Delphi XE7, iOS | No Comments

Stumbled across this error during Delphi XE7 iOS deployment:

Unable to mount developer image (e800000e)
I’ve found two solutions:

› Continue reading

Tags: , ,

VerySimpleXML 2.0 – a lightweight, cross-platform, one-unit XML reader/writer for Delphi 2010 – 10.1 Berlin

There are lot of possibilities if you’re in need to parse or write XML files:

Now here comes another one: the updated VerySimpleXML 2.0 – a lightweight, cross-platform, one-unit XML reader/writer for Delphi 2010 – 10.1 Berlin targeting at Win32, Win64, iOS, MacOSX and Android. Use it for well-formed XML files (like configuration files, interprocess communication protocols, etc.). › Continue reading

Tags: ,

Exception while using TStreamReader with TZipFile

Tuesday, May 13th, 2014 | Delphi Programming, Delphi XE6 | 4 Comments

If you’re using the TStreamReader with a TZDecompressionStream – the stream output by TZipFile.Read(const FileName: string; out Stream: TStream; out LocalHeader: TZipHeader) – you’re likely to experience the exception: EZDecompressionError with the message 'Invalid ZStream operation!'.
› Continue reading

Tags:

About Dennis D. Spreen

I'm an avid programmer working on a variety of platforms in a variety of languages with a wide technical interest.

Search

QR Code

Categories