New in 10.2.2:c++ and Debugger improvements

Source: Internet
Author: User
Tags change settings

In RAD Studio 10.2.2, we ' ve made a number of great quality improvements for the C + + toolchain and for the debugger for bot H C + + and Delphi.

Debugger
    • Linux:many fixes when evaluating, especially when passing records or arrays
    • Android:android debugging was broken for Android 8.0 (globally, not just for us.) As of Android 8.1 debugging works again, and we have made tweaks to ensure it works smoothly
    • Ios:several bugfixes to does with stability and evaluation
    • Macos:several bug fixes to does with evaluating and watching properties
    • C + + win64:applications can now evaluate properties. This is a long-standing request

... plus many others. In other words, the debugging experience should is more powerful and featureful, and more stable, in 10.2.2.

C + + Toolchainlinker

For WINDOWS, linker improvements is something we ' ve been focusing on since 10.2.0. Both 10.2.0 and 10.2.1 has brought significant improvements:a large address aware linker, retuning for large linksets, E Xposing options in the IDE for your able to change settings if your project have unusual characteristics that cause an Error with the defaults.

In 10.2.2, we ' ve fixed or changed:

    • Out of memory issues for DWARF_STR (debugging info)
    • Issues linking when building Delphi code in a or as a C + + project
    • Issues when linking with delay loads specified
    • LME and 202 Errors
    • Issues linking when not using runtime packages
    • Issues using incremental linking

The most common linker issues reported be to does with out of memory or heap errors, and while the 10.2.x linker was far bet TER than past versions, several of the above areas should make 10.2.2 ' s even better.

As a side note, we find that many linker stability reports can is traced back to an antivirus on your system. LME288 is one common one. Antiviruses can insert themselves into apps in all sorts of ways, usually undocumented and fragile, and change the app ' s E  Nvironment and behaviour. For something like the linker, which both uses a lot of memory and assembles a PE image in memory, avoiding antivirus inter Action is key. We cannot prevent bugs introduced by the third party software.

C + + compilers

We have a large number of quality items, together, greatly improve C + + compatibility for many common libraries, as we ll as solving unusual compilation problems that can affect complex projects.

These areas include:

  • Significant changes in handling explicitly instantiated templates, and export/import behaviour, when using __declspec (pack Age).  This declspec does isn't explicitly note when a definition is exported vs imported.  If you are a instantiated template and multiple modules, you normally want only a single copy. Many compilers has different behaviour here, but we Clang compilers were not optimal, and had different behaviour to CLA  Ssic Bcc32.  For simple situations such as a EXE and a DLLs, you should get the same behaviour as classic bcc. For more complicated situations behaviour may still is non-optimal, and we ' re interested in test cases for the scenarios Y ou use.
  • Many areas to does with exception handling, including different behaviour in optimized or release builds, issues throwing FR Om within __try, and throwing and catching exceptions across module boundaries.
  • Several key debugging improvements in the clang-based compilers. If you had issues where variables were isn't evaluatable or not displayed, or other issues in general debugging, you should See those resolved.
  • More <math.h> functions is fully provided
  • Stability issues when handling unexpected (often incorrect) code
  • Android:fixed an issue, could cause a crash at app startup

Plus more.

In addition, we ' ve made a number of significant fixes to code completion in the Ide:we resolved some unusual bugs that co  Uld cause AVs When code completing or cause IDE instability. This means the IDE should is more stable, and if you were experiencing problems using code completion in the IDE, tho SE should be resolved.

Many of these were complex issues that affected customers, and also affected using common libraries. 10.2.2 ' s C + + toolchain support should is much more robust and we hope you throw lots of complex code at it.

Https://community.embarcadero.com/blogs/entry/new-in-10-2-2-c-and-debugger-improvements

Https://community.embarcadero.com/blogs/blogger/listings/david-millington

New in 10.2.2:c++ and Debugger improvements

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.