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:
1 2 3 4 |
for var I: Integer := 1 to 10 do for var Item: TItemType in Collection do |
or even more simplified to
1 2 3 4 |
for var I := 1 to 10 do for var Item in Collection do |
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.
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
Pass a multidimensional array as a parameter (with a hidden caveat)
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
Behavior3 client library for Delphi (Behavior Trees for Delphi)
behavior3delphi is a Behavior3 client library for Delphi (Behavior Trees for Delphi) based on behavior3js.
› Continue reading
LibBLP v1.0 – A BLP image reader library for Delphi 10.1 Berlin+ with DXT3/5 decompression support
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
How to fix the “api-ms-win-crt-runtime-l1-1.0.dll is missing” error for Delphi 10 Seattle
If you experience this error during the start of Delphi 10 Seattle
1 2 3 4 |
"The program can't start because api-ms-win-crt-runtime-l1-1.0.dll is missing from your computer. Try reinstalling the program to fix this problem" |
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
VerySimple.Lua 2.0 – a cross-platform Lua 5.3.0 wrapper for Delphi XE5-10.1 Berlin
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
Delphi XE7 and iOS error “Unable to mount developer image (e800000e)”
Stumbled across this error during Delphi XE7 iOS deployment:
I’ve found two solutions: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:
- use TXMLDocument (the MS XML wrapper)
- or use a xml component like OmniXML, NativeXml, ADOM, SAX, libxml2, DIXml, fcl-XML, Fast XMLParser, SimpleXML, OXml, or VerySimpleXML 1.0
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
Exception while using TStreamReader with TZipFile
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
About Dennis D. Spreen
Search
Recent Posts
- How to compile Lua 5.4.0 for Android as a dynamic library using Android Studio 4
- Please make inline vars usable for production – fix RSP-28892
- How to compile Lua 5.4.0 as a Mac OS X dynamic library
- How to compile Lua 5.4.0 for Linux as a shared library
- How to compile Lua 5.4.0 for Windows
- Daily Wage – a Spigot/Bukkit plugin that pays out a daily wage
- How to compile Lua 5.3.5 for Windows
- Better Collada exporter for Blender with custom properties
- MOS6502-delphi – a MOS 6502 CPU emulator for Delphi
- Pass a multidimensional array as a parameter (with a hidden caveat)
Categories
Tags
Archives
- May 2020
- March 2020
- June 2019
- March 2017
- August 2016
- July 2016
- June 2016
- January 2016
- September 2015
- February 2015
- January 2015
- October 2014
- September 2014
- August 2014
- May 2014
- March 2014
- February 2014
- November 2011
- June 2011
- February 2011
- March 2010
- September 2009
- August 2009
- July 2009
- May 2009
- March 2009
- February 2009
- January 2009
- November 2008
- October 2008
- February 2008
- June 2007
Delphi Feeds
- Habari STOMP Client libraries release 2024.12 December 7, 2024
- Delphi and AI December 7, 2024
- Uses Clause Manager topic added to the GExperts help December 6, 2024
- Upgrading C++Builder 12.2: Tip #4 1/2: Check out compiler safety options December 6, 2024
- Upgrading C++Builder 12.2: Tip #4, Take Advantage of Security and Correctness December 5, 2024
- .NET MAUI: Complete Guide December 4, 2024
- Upgrading C++Builder 12.2: Tip #3, Massive Files with iostreams December 4, 2024
- Log exceptions in your Delphi app in the cloud with StellarDS.io December 4, 2024
- Introducing Signotaur - Remote Code Signing Server December 4, 2024
- Upgrading C++Builder 12.2: Tip #2, Handling Old RTL December 3, 2024