- Fixed supplying Linker Script files twice for External GCC projects.
- Fixed crash when displaying static const member data of the same type as the class that it is declared in.
- Fixed crash importing IAR projects.
- Added "Generate Listing File" project property.
- Fixed mkld support for end_symbol in memory segments.
- Fixed Clean executing pre/post build commands.
- Updated the LLVM/Clang tools build to use the 13.0.1 source release.
- Fixed display of FP registers for Cortex-M33 using J-Link target interface.
- Fixed crash using Edit > Selection > Increase Line Endent when virtual space is enabled and a block of text is selected extending past the end of the file.
- Fixed syntax coloring of integer literals containing single quote separators.
- C/C++ syntax highlighter now highlights stdint.h types.
- Fixed the 'Flat Search Result Output' checkbox in the find and replace window's settings dropdown not showing the current state.
- Add macro $(MemorySegments) to link pre/post build commands.
- The macro $(LibExt) is now available for External GCC link commands.
- The macro $(MemorySegments) is now the default memory simulation parameter.
- Improved performance of delimiter matching when editing a large file.
- Fixed paste keyboard accelerator being handled by editor when focused in the find in files dialog (macOS only).
- Added support for CrossKey USB license key.
- Fixed Linux file association.
- Updated the LLVM/Clang tools build to use the 13.0.0 source release.
- Updated the GCC/BINUTILS tools build to use the GNU ARM Embedded Toolchain 10.3-2021.10 source release.
- Added support for CMSIS-DAP v2.
- Fixed size display of unsized arrays in variables display.
- Display C file level statics and C++ static members in globals window.
- Added support for SWD multi-drop with CrossConnect, CMSIS-DAP and FTDI target interfaces.
- Fixed tab characters not being inserted when in block selection mode.
- Fixed positioning of cursor when carrying out a block insertion past the end of a line and the Use Tabs option is set to Yes.
- Editor now syntax colors files with .html file extensions.
- Fixed problem reading the environment.xml file on certain systems.
- Project Explorer context menu action Save Solution As... now generates a sorted project file.
- The Set Active Project dialog now initially selects the current active project.
- Fixed removing of project output files when project items are removed/added/excluded.
- Updated the GCC/BINUTILS tools build to use the GNU ARM Embedded Toolchain 10.3-2021.07 source release.
- Display secure/non-secure MSPLIM, PSPLIM in CPU register group.
- Fixed crash when displaying libcxx containers.
- Fixed simulated pkhbt, pkhtb instructions.
- Fixed variable view tooltip truncating uint64_t decimal values to 19 digits.
- Fixed crash when passing a null format pointer to debug_vprintf, debug_vfprintf, debug_vscanf and debug_vfscanf functions.
- Fixed syntax coloring of numerical escape codes.
- Fixed syntax coloring of #include filenames.
- Fixed incorrect indentation when inserting a tab character before another tab character.
- Fixed the find in files dialog not remembering the "Search In" selection between sessions.
- Fixed the find in files dialog not enabling the find button under certain circumstances.
- Fixed font selection when using macOS 12 (Monterey) BETA.
- The project explorer's build configuration combo box now displays the configuration name as the tooltip if the configuration name is wider than the combo box.
- The build configuration search now matches on each word rather than the entire string.
- Assembly code syntax colorer now colors FIXME, ATTENTION and Lint comment tags.
- Package manager groups can now be collapsed and expanded.
- Double clicking in terminal windows now selects words.
- Added BuildLinkProject command (Ctrl+P, K).
- Added OpenLinkerMapFile command (Ctrl+P, M).
- Added "Show Labels In Disassembly" and "Show Source In Disassembly" environment options to disassembly window context menu.
- Fixed project window keyboard accelerators not being enabled and disabled correctly when selecting project nodes.
- Fixed manual package installation not selecting all dependee packages for installation.
- Fixed display of find and replace window results containing tabs.
- Fixed BinaryFile.pokeUint32() script function ignoring the littleEndian option.
- Add support for ARMv8.1-M architecture and Cortex-M55 processor.
- The build macro $(RelInputDir) is set to dot for files that are not relative to the project.
- Fixed 'dot moved backwards' linker warning when placing 'run in' sections.
- Add project property Compile C Files As C++.
- Add project property Enable Use Of __cxa_atexit.
- Add project property Vector Extension for ARMv8.1-M architecture projects.
- Set the compiler property Use Builtins default to Yes.
- Updated the LLVM/Clang tools build to use the 12.0.1 source release.
- Changing the PC value in the registers window will now updated the debugger windows.
- The registers window splits up the cfbp register group into individual registers.
- Copy text selection in the memory window now copies the exact text to the clipboard.
- Fixed syntax coloring of disassembly when visible whitespace option is enabled.
- Add support for ITM_RxBuffer/ITM_RXBUFFER_EMPTY for target input.
- Add simulator support for FPv5 vrint/vcvt instructions.
- Fixed syntax coloring of XML comments.
- Fixed incorrect syntax coloring of certain C/C++ comments containing ampersand characters.
- Fixed syntax coloring of XML documents when visible whitespace option is enabled.
- Fixed highlighting of text containing tab characters.
- Fixed highlighting of text containing whitespace characters when visible whitespace option is enabled..
- Fixed syntax coloring of single line comments started with the '@' character in ARM assembly code.
- The editor now supports highlighting of C/C++ raw string literals.
- Improved graying of inactive code on lines containing C preprocessor directives.
- Fixed duplicated " or < characters when selecting #include code suggestions.
- Scroll wheel can now be used while selecting text with the mouse.
- Auto-indentation now uses the indentation level of the last non-empty line if enter is pressed on an empty line.
- Go to definition and declaration operations now highlight the symbol being searched for.
- Fixed the previous horizontal scroll position not being correctly restored when opening a solution and the editor is not docked in the default dock site.
- Fixed the previous cursor column position not being restored when opening a solution.
- C/C++ syntax coloring is now applied to files with no extension.
- Added "String", "String Delimiter", "String Escape", "XML Delimiter", "Spelling Error", "Line Number" and "Line Number Highlight" to customizable color scheme.
- Added EditDeleteLine command (Ctrl+Shift+L).
- Fixed text appearing behind editor scroll bars when using dark theme.
- Project Explorer context menu action Convert to Regular Folder now operates recursively and can subsequently be modified like a regular folder.
- Fixed edit actions (cut, copy etc) on project nodes in Project Explorer.
- Fixed Code Outline window not updating when editor is saved.
- Manual package installation now warns of package dependency errors when the depdendee package is unknown to the package system.
- Added Export to Text Editor to debug terminal.
- Line editor now scrolls when cursor reaches button or status message rather than removing it.
- Fixed file selector combo box not moving file list if parent window is moved.
- Fixed file selector combo box keeping file list on top of all windows.
- Fixed selecting of files from the file selector combo box file list when using the mouse.
- Find dialogs now preserve the state of the show options button.
- Fixed drag and drop of files on macOS.
- Fixed crash after closing disassembly window.
- Fixed crash when using find in files to search in the current document and there is no editor currently focused.
- Build log can now handle colored compiler diagnostics.
- Floating point registers will now be displayed in floating point format when Decimal format is selected.
- Manual package install now removes existing version of package if already installed.
- Improved appearance of macOS combo box dropdowns containing icons.
- Fixed external tools not appearing when the match element is omitted from the tool definition in external tools file.
- Fixed crash when carrying out clipboard operations on files located in output files folder.
- Fixed display of tab characters in terminal emulator window.
- Fixed property values in project explorer not updating when modified using dark theme.
- The selected folder in the find and replace window is now persistent between sessions.
- Opening the new project wizard while debugging now shows the "Stop debugging?" prompt.
- Fixed editor grouping C/C++ source and header files together in the "Single Title Button For All Documents" file selection menu.
- The build macros $(RelInputDir) and $(RelInputPath) are now defined for project level build commands.
- Fixed section renaming when using clang compiler.
- Escape ; in exported build commands on Linux/macOS.
- Updated the GCC/BINUTILS tools build to use the GCC ARM Embedded Toolchain 10-2020-q4-major source release.
- Replace Run Static Code Analyzer with Analyze action on project explorer context menu.
- clang-tidy now used for Static Code Analyzer, checks are specified in project property Clang Tidy Checks.
- Add project property Analyze After Compile to enable the analyzer to run when a source file is compiled.
- Fixed simulator setting carry flag on thumb2 register shifted lsls, lsrs, asrs and rors instructions.
- Add support for displaying double precision registers d16-d31 with J-Link target interface.
- Added 64-bit view to memory window.
- Add support in registers window to display double precision registers in various NEON formats.
- Add debug support for restrict types.
- Debug terminal no longer erases line if the line been output ends with "\r\r\n".
- rtti can now be used without exceptions enabled.
- Fixed crash when adding files to project folder with no project node selected.
- Updated the LLVM/Clang tools build to use the 11.0.0 source release.
- Fixed clang/segger-cc compiler option for Merge Globals.
- Add Disable Function Inlining option to code generation options.
- Optimization levels 0-4 are now supplied to the llvm LTO compiler.
- Add Linker Search Path option to linker options.
- Fixed double counting of initialized data size statistic in project explorer.
- Fixed lock up when removing Externally Built projects that have the Clean Command property set.
- Debug support added to gcc LTO built executables.
- Fixed gcc LTO support for C++ programs that have the same symbol defined multiple times.
- Fixed llvm LTO support discarding weak symbol definitions.
- Fixed NaN detection in simulator.
- Improved disassembly window's update speed when scrolling.
- Fixed umaal implementation in simulator.
- Fixed Debugger > Restrict Memory Access using ELF file to determine target address ranges.
- Improved type interpretation for STLPort, libstdc++ and added support for libc++.
- Added debug_evaluate to debugIO.
- Add support for .debug_macinfo debug sections.
- Fixed exception when running CrossLoad with expired license support period.
- Fixed matching of delimiters that are within strings.
- Fixed tab characters not being used for auto indentation when tabs are enabled.
- Fixed loading of files from a file system that does not support file locking (Windows only).
- Fixed opening of package source files from help contents window.
- Fixed file selector dialog not remembering selected file type filter.
- Fixed GUI locking up when find in files on large files.
- Improved appearance of memory usage windows when window is small.
- Add support for ARMv8 architectures to intrinsics.h.
- Fixed passing Additional Assembler Options to compile step assembler command.
- Add Run Preprocessor option to assembler options.
- Updated the GCC/BINUTILS tools build to use the GCC ARM Embedded Toolchain 9-2020-q2-update source release.
- Added BinaryFile.loadAppend() script function.
- Symbol renaming of __vfprintf/__vfscanf/__do_debug_operation done by linker command-line rather than in generated ld script.
- Updated the LLVM/Clang tools build to use the 10.0.1 source release.
- Fixed watch windows resetting the radix of child nodes when parent node is selected.
- Replace Clear Disassembly Breakpoints On Debug Stop with Disassembly Breakpoints environment option.
- Source breakpoints are shown in the disassembly window and vice-versa.
- Add debugger project option Alternative LDR Disassembly.
- Object file disassembly now contains intermixed source code.
- Fixed syntax coloring of assembly files not working when visible whitespace is enabled.
- Shift+Tab now reduces indentation of current line when no text has been selected.
- Text editor's horizontal scroll bar now uses maximum line length for maximum scroll value.
- Changed the Linux version's default keyboard shortcut for the EditUppercase command to "Ctrl+K, U" in order to avoid a clash with the Ibus input method's default Unicode Code Point shortcut. The original key sequence of "Ctrl+Shift+U" remains defined as an alternative shortcut.
- Added Edit > Selection > Toggle Comment (Ctrl+K, Ctrl+/) command.
- Selection comment and uncomment operations now add and remove comments at indentation level of selection rather than only at the start of the line.
- Added syntax highlighting for Python source files.
- Fixed inactive code coloring being cleared when file is saved.
- Fixed navigation commands being disabled when file is saved.
- The Edit > Others > Duplicate (Ctrl+D) command will now duplicate selected text.
- Spell check now ignores camel case words.
- Fixed extension of multi-line cursor after multi-line text insert.
- Symbol browser, watch, trace and register windows now save exported text files to the project directory by default.
- Memory usage window now shows the percentage used of segments and sections.
- Build summary now shows size of segments.
- Memory window columns are now grouped in auto column mode.
- Fixed project explorer's Open With > System Web Browser menu option doing nothing on Linux.
- Fixed vfscanf implementation always including support for character classes.
- Added missing wide character, float point implementations of vfprintf.
- Fixed errors when loading 3rd-party dynamic libraries on macOS Catalina.
- Fixed lock up when removing Externally Built projects that have the Clean Command property set.
- Fixed new project wizard's build configuration selector selecting incorrect configurations with some project templates.
- Fixed and improved definitions of wchar_t, WCHAR_MAX and WCHAR_MIN in header files.
- Fixed output of floating point numbers using printf when precision value is 1 and the Code > Printf/Scanf > Printf Floating Point Supported project property is set to Float.
- Updated the LLVM/Clang tools build to use the 10.0.0 source release.
- Added Windows > Project Explorer > Check Solution Target option.
- Files now appear in alphabetical order when dragging and dropping them into a project explorer folder.
- Fixed Left-justify printf format directive.
- Correct names of 64-bit clz/ctz helper functions.
- Fixed crash with ElfDwarf files containing .debug_types section.
- Fixed timeout problems with TargetInterface.runFromToAddress (and variants) when used with J-Link target interface.
- Fixed source file identification when debugging multiple elf files.
- Add Confirm Automatically Build Before Debug environment option.
- Improve cast support in debug expressions.
- Fixed Target > Attach Debugger setting breakpoints after Debug > Stop with no Target > Disconnect.
- Fixed syntax coloring of hex floating point constants.
- Added Text Editor > Visual Appearance > View Whitespace option.
- Fixed block editing on lines containing tab characters.
- Added Edit > Others > Toggle Column Guide.
- Fixed code formatter corrupting characters that cannot be represented using Latin 1 character encoding.
- Fixed code formatter marking file as modified when it has made no changes to the file.
- Fixed code formatter removing all breakpoints and bookmarks.
- Fixed file auto recovery appending characters to the end of recovered file in some circumstances.
- Selection highlight is now visible on text that has a background color specified in the color scheme.
- Fixed .elf files not appearing in the Target > Download File > Download Elf File... and Target > Verify File > Verify Elf File... file browsers.
- Keyboard options dialog now displays command descriptions as a tooltip.
- Fixed crash after deleting entries from clipboard ring window.
- Fixed default executable extension to be .axf for External GCC toolchain builds.
- Fixed appearance of memory usage windows when window is small.
- Fixed display of non-printable characters in binary editor.
- The binary editor font can now be specified using the Environment > User Interface > Application Monospace Font option.
- macOS application bundle paths can now be used when specifying the location of external executables.
- Fixed display of non-printable characters in binary editor.
- Fixed the restoring of main window position when located on a display arranged above or to the left of the display containing the menu bar (macOS only).
- Fixed context menus not appearing on a display arranged above the display containing the menu bar (macOS only).
- Fixed crash when starting and stopping the debugger using the editor toolbar buttons.
- Fixed generation of projects from a project template when file nodes have parent folder nodes containing no files.
- Updated the GCC/BINUTILS tools build to use the GCC ARM Embedded Toolchain 9-2019-q4-major source release.
- Removed Use External GCC environment option and the -gcc command line option on crossstudio and crossbuild. See how to use an Using an External ARM GCC toolchain documentation for project property settings.
- Added Use External GCC and GCC Prefix project properties.
- Added Use Compiler Driver project property.
- Added fixed point implementation of expf selected when Library Optimization is set to Fast.
- Project explorer code and data size is now displayed as bytes when less than 1K.
- Project property Access Variables Within Memory Map Only changed to Restrict Memory Access.
- Changing the ARM Core Type project property now updates the ARM Architecture property.
- The User Include Directories are supplied to the assembler to support .include and .incbin directives.
- Updated the LLVM/Clang tools build to use the 9.0.1 source release.
- Fixed crash when PC Sampling used with J-Link.
- Increased the nested structure depth that can be displayed in watch windows.
- Add Load Begin Script and Load End Script project properties.
- SVD dim elements can now be specified as hex numbers.
- Add cJTAG to Target Interface Type project property.
- Fixed displaying breakpoints on code lines in startup completion symbol before startup completion has occured.
- Fixed text editor auto recovery duplicating end-of-line terminators when file being edited is in DOS format on a UNIX system.
- Fixed incorrect calculation of caret width when using proportional fonts.
- Added missing close button on code editor find and replace dialog.
- Fixed block uppercase and lowercase operations when block has been marked from top right to bottom left.
- Added additional file icons in order to improve appearance at smaller sizes (Linux only).
- stddef.h offsetof macro now uses _builtin_offsetof.
- Fixed Windows > Project Explorer > Read Only Data in Code option working the wrong way around.
- Fixed crash when using CMSIS-DAP target interface on latest versions of macOS.
- Fixed auto-complete suggestion being inserted when enter key is pressed immediately after closing suggestion dialog with mouse click.
- Fixed find in files dialog not disabling find button when search text field is empty.
- Fixed crash when using Find References on a preprocessor definition defined on the command line.
- Fixed project explorer not sorting tree when files are added using drag and drop.
- Fixed menu descriptions not appearing on status bar (Windows and Linux only).
- Updated the GCC/BINUTILS tools build to use the GCC ARM Embedded Toolchain 8-2019-q3-update source release.
- Add Generate Assembler Listing File project property.
- Updated the LLVM/Clang tools build to use the 9.0.0 source release.
- Add support for CoreSight SWO on Cortex-M devices.
- Fix clearing trace output when Debug > Break is used.
- Add support for ARM semihosting.
- Fixed simulator leaving pc on next instruction on b . detection.
- Add Load Additional Projects project property to enable a project to load the outputs of other projects.
- The property Debug Dependent Projects has changed to Debug Additional Projects the value Yes maintains the old behaviour.
- Editor now displays number of lines and columns selected when selecting text.
- Fixed the Replace in selection option not appearing on the find and replace dialog when only a single line is selected.
- Fixed selected text not adjusting size when carrying out a replace in selection.
- Fixed crash when using Edit > Column Tidy and a comment is selected.
- Fixed CrossScript crash when the BinaryFile.resize() function is called without previously calling the BinaryFile.load() function.
- Fixed crash when creating a new external built executable project.
- Fixed crash when creating an empty solution.
- Editor no longer outputs syntax errors to stderr when carrying out code completion.
- Help window search now updates while typing.
- Build log window's memory usage summary now displays small sizes in bytes.
- Removed option to select linker variant.
- Fixed crash when LTO processing of big endian object files.
- Fixed -template option on crossbuild.
- The preprocessor define __HEAP_SIZE__ is now set to the value of the Heap Size project property.
- Fix watch window latching the initial size of array variables.
- Added Debug > Debugger > Debug Terminal Log File project property.
- Code editor will no longer match braces, brackets or parenthesis located within comments.
- Fixed incorrect syntax coloring of C comments introduced with the /*!< character sequence.
- Fixed crash when starting a build with a keyboard accelerator whilst the code suggestion popup is visible.
- Fixed breakpointable line markers not appearing on lines that have a temporary breakpoint set.
- Fixed delete forward key deleting two characters when code suggestion dialog is visible.
- Fixed caret not being visible with certain fonts when located at the end of a line and an underline caret style is selected.
- New project file selection puts files into the folders.
- Register window's group selector popup now displays a scroll bar if there are more groups available than will fit on the display.
- Fixed crash if delete key is pressed in target window without having a target interface selected.
- Fixed "V8M Mainline" and "FPv5-SP-D16" library build variants.
- Pre-Build and Post-Build commands no longer apply to clean operation.
- Fixed vfprintf %f format when Printf Floating Point Supported is set to Float.
- Added environment option Switch Project To Text Editor to enable multi-project debugging switch on editor focus.
- Target device status shows multiple device status when multi-project debugging.
- Added Debug Location toolbar.
- Added additional Debug Symbols File and Debug Symbols Load Address project properties.
- Fixed LIBMEM RPC loader instability when downloading to V8M architectures.
- Fixed caret not being visible with certain fonts when located in virtual space.
- Significantly improved speed of selection deletion when editing large files.
- Added Hide/Show toolbar on editor context menu.
- Fixed goto definition opening a relative include file under certain circumstances.
- Fixed open with external browser (macOS only).
- Automatic column resizing in properties window is now disabled if column splitter is moved.
- Package manager can now be opened from the new project dialog.
- Added LIBMEM_DRIVER_PAGED_WRITE_OPTION_DISABLE_DIRECT_WRITES option.
- Add stdatomic.h and helper functions to C library.
- Fix include file dependency generation when Keep Preprocessor Output is enabled.
- Fixed linker script generation and memory usage display when memory segment ends at 0xFFFFFFFF.
- Added TargetInterface.setTCK() target script function.
- Added Debug > Target Loader > Loader Type project property.
- Fixed crash clearing execution profile window when not debugging.
- Fixed FTDI based target interfaces not setting the Target > Fast Memory Accesses target property to Yes by default.
- Added Text Editor > Visual Appearance > Mate Match Off Screen option.
- Removed text menu separators on macOS.
- Fixed the recent projects list not being updated when project is opened from the recent projects window.
- Fixed pinning of projects not working in the recent projects window.
- Improved resizing of dynamic folder properties window.
- Fixed crash when docking windows.
- Fixed crash when attempting to create a directory on a Windows drive that does not exist.
- Improved appearance of list view titles when using dark theme.
- Added Internet > HTTP Caching environment option.
- Added Package Manager > Verify Package Downloads environment option.
- Fixed waypoint back and forward keyboard accelerators not working on macOS.
- Add support for ARMv8-A/R AAarch32 architecture.
- Add __clz*i2, __ctz*i2, __popcount*i2 and __parity*i2 helper functions to C library.
- Add support for Cortex-A53 executing in AArch32 non-secure state.
- Debugger will display data on debug terminal that is written to the ARM/CortexA/R DCC channel when debugio is not enabled.
- Added USB > Maximum Packet Count CMSIS-DAP target property.
- Fixed lock up when using some CMSIS-DAP devices on Windows 10 and macOS.
- Improved CMSIS-DAP performance when entering and exiting debug state.
- Fixed crash when using FLM loaders on Linux and macOS.
- Fixed crash with ST-LINK/V2 that has earlier than V2.J28 firmware.
- The colour of column guide bars can now be modified.
- Fixed caret not being visible with certain fonts when an underline caret style is selected.
- Editor keyboard accelerators will now activate when code suggestion popup is visible.
- Fixed reassignment of FindUsingGoogle command shortcut not being remembered.
- Fixed crash when calling character type functions and UTF-8 locale codeset has been selected.
- Fixed link error when providing user defined __user_find_locale function.
- Fixed iswspace function not recognising some characters as spaces when UTF-8 locale codeset has been selected.
- Updated the GCC/BINUTILS tools build to use the GCC ARM Embedded Toolchain 8-2018-q4-major source release.
- Updated the LLVM/Clang tools build to use the 7.0.1 source release.
- Pre-Build and Post-Build commands now work with solution and batch builds and on dependent projects.
- Add project properties to enable external build commands to be used for compile and link.
- Replaced environment options Enable All Warnings Command Line Options and Enforce ANSI Checking Command Line Options
with project properties Enable All Warnings Command Line Options, Enable All Warnings C Compiler Only Command Line Options and Enable All Warnings C++ Compiler Only Command Line Options.
- Added Enforce ANSI Checking C Command Line Options and Enforce ANSI Checking C++ Command Line Options.
- Fixed saving of TI hex files from memory window.
- Fixed memory window not updating after loading memory from a file.
- Add support for Cortex-M7 ETB tracing.
- Scroll line up and scroll line down operations now move cursor into visible area if it is off-screen.
- Fixed crash when closing editors.
- Fixed code suggestion dialog not highlighting selected item with correct colour when dark theme is selected.
- Improved terminal emulator receive performance when using high baud rates.
- Added ProjectExplorerExcludeFromBuild keyboard command.
- Debug terminal now handles carriage return characters.
- Fixed slow building problem introduced in version 4.3.1.
- Added option to open file with external editor to project explorer context menu.
- Fixed package manager not correctly uninstalling legacy packages.
- Fixed use of section attributes in source code when the same section has been renamed using the section name project properties.
- Fixed linker script not being regenerated when Code > Linker > Additional Linker Script Generator Options property is modified.
- Setting the Code > Linker > Check For Memory Segment Overflow property to No no longer disables unplaced sections checks from the GNU LD linker script. These checks can now be disabled by adding the -no-check-unplaced-sections option to the Code > Linker > Additional Linker Script Generator Options property.
- Fixed --gap-fill option not being passed to objcopy if the Code > Linker > Additional Output File Gap Fill Value property is set to 0x00. Clear this property if existing behaviour is required.
- Added C++14 sized deallocation functions.
- Added support for STLINK-V3 to ST-LINK/V2 and ST-LINK target interfaces.
- Added Debug > Target Control > Check Load Sections Fit Target Description project property.
- Fixed incorrect "load section does not fit the target description" error message.
- Auto-surround text is no longer activated when using block selection.
- Fixed incorrect font spacing in list view windows when display scaling is used.
- Fixed crash when dragging a window icon over the icon of another window in the the same docking area.
- Fixed register selection pins in register window doing nothing when clicked.
- Fixed crash when closing editor windows with the code outline window active.
- Fixed placement of .data_tcm_run section in default flash_to_tcm_placement.xml file.
- Added "Unaligned Access Support" code generation option.
- Added "Link Time Optimization" code generation option.
- Updated the LLVM/Clang tools build to use the 7.0.0 source release.
- Fixed output of floating point numbers using printf when precision value is 1.
- Fixed crash when evaluating certain dwarf information.
- Fixed crash while disassembling a line with a long symbol name.
- Fixed crash when target connection is lost or reset.
- Fixed inheritance of the "Reset Script" property using the active build configuration.
- Fixed watch window variables not being updated correctly after they have been modified.
- Added Text Editor > Programmer Assistance > Code Completion Replaces Existing Word option.
- Fixed Ctrl+F not focussing text editor find popup on some Linux distributions.
- Fixed incorrectly displayed parameters in code suggestion popup when showing overloaded functions.
- Fixed use of tab key when function prototypes are displayed in code suggestion popup.
- Fixed crash if tab size gets set to 0.
- Fixed potential crash when code suggestion popup is displayed and an Alt key combination is pressed.
- Comments are no longer displayed as an italic font by default.
- Improved IDE start up and project loading time when a lot of editors are open.
- Added Environment > User Interface > Theme option (Windows and Linux versions only).
- Fixed sporadic crash when IDE is starting up.
- Editor tabs can now be reordered.
- Editor tab order is now preserved in session file.
- Project files can now be drag and dropped into the project explorer in order to load them.
- Fixed missing environment settings when Japanese system locale is selected.
- Fixed slow register window search.
- Fixed list view windows not using the Environment > User Interface > Application Monospace Font property.
- Fixed Sentinel USB tokens not working after Windows 10 version 1803 update.
- Fixed crash when building on a machine with more that 16 cores.
- Batch builds are now done in parallel.
- Updated the GCC/BINUTILS tools build to use the GCC ARM Embedded Toolchain 7-2018-q2-update source release.
- Updated the LLVM/Clang tools build to use the 6.0.1 source release.
- Added -disable-missing-runin-error linker script generator option.
- Added Code > Linker > Additional Linker Script Generator Options project property.
- Multiple run in sections can now be specified in section placement file.
- Fixed using Alt+Tab when quick search window is visible (Linux only).
- Added Text Editor > Programmer Assistance > Code Completion Selection Key option.
- Added EditMoveSelectedLineUp and EditMoveSelectedLineDown commands and assigned them to Alt+Up and Alt+Down keys.
- Keyboard map is now saved with UTF-8 encoding.
- Web browser links to text files now open in web browser rather than text editor.
- Add capability to import eclipse .project/.cproject files as supplied with STM32Cube sample projects.
- Fixed crash when closing editor windows when code outline window is open.
- Fixed processing of multiple backspace characters in text output windows.
- Fixed crash in outline window when viewing certain C++ code.
- Fixed missing clipboard operations from text output window's context menu.
- Line edit property editors now initially selected.
- Fixed crash in stack usage window viewing certain .elf files.
- Updated the LLVM/Clang tools build to use the 6.0.0 source release.
- Supplied versions of arm_neon.h that are compatible with the supplied gcc and clang compilers.
- Command line builder now implements -verbose, default is to build silently.
- Added Code Generation option "ARM Advanced SIMD Auto Vectorize" to enable loop vectorizing in the compilers.
- Added prototype for __putchar() to stdio.h.
- sys/stat.h now declares mode_t and off_t types.
- Added $(UnixTime) system macro.
- Removed deprecated throw declarations in new header file.
- Fixed inability to add items to the watch window when periodic update is enabled.
- Edited source files will not be used by the debugger.
- The Debug option "Connect With Reset" is now ignored by the j-link target interface.
- J-Link implemented breakpoints are now cleared on debug stop.
- Linux version now using libusb-1.0 library for USB access.
- The CrossConnect serial number can now be cleared when editing the Target > Host Connection target property in the properties window.
- Added Text Editor > International > Auto-Detect UTF-8 option.
- Fixed text editor tooltip not working when word starts on first column.
- Fixed goto definition not working correctly when definition has been selected.
- Tab key now indents only if selection is multi-line.
- Find in files dialog can now be opened using Ctrl+Shift+F from the incremental find dialog.
- Fixed activation of keyboard accelerators from HUD windows.
- Fixed automatic installation of packages when clicking on documentation links.
- Fixed debug terminal find only carrying out search once.
- Fixed bookmarks window updating bookmark line numbers when lines were inserted into or deleted from a different file.
- Fix command line supplied to clang static analyzer for ARM/Cortex-A/Cortex-R devices.
- Fixed opening of project files when the File > File Open Action property is set to Web Browser.
- Popup error message now displayed if package list cannot be downloaded when refreshing.
- Added File Search > Collapse Results environment option.
- Fixed crash when refreshing the outline window while editing an empty XML file.
- Fixed setting propertyGroup defined properties on folder nodes when importing package files.
- Fixed Windows installer failure when user name contains certain non-ASCII characters.
- Fixed loss of icons and inability to start IDE from desktop if umask has been set preventing read and execute permissions from being enabled for others (Linux only).
- Added c++1z and gnu++1z C++ language standard options.
- Replaced gcc c++ exception handling code with llvm equivalent.
- Fixed command line generated when "Keep Preprocessor Output" is enabled.
- Improved parallel build performance on Linux and macOS hosts.
- Word and half-word writes to SWO channel 0 are now displayed in the debug terminal.
- Improve debug when compiler option "Supply Absolute File Path" is set to "No".
- Fixed crash when quick watch used on a C++ struct containing member functions.
- Enhanced Threads window to be able to display additional RTOS queues.
- The Text Editor > Programmer Assistance > Check Spelling environment option now defaults to No.
- Fixed code formatting of a selected block not working correctly when the Tab Cleanup On Save option is enabled.
- Fixed NULL being inserted into text file when CTRL+Space is pressed on Linux version of the code editor.
- Added replace in selection to the find dialog's find options summary.
- Fixed freezing of IDE when saving a large text file and the Delete Trailing Space On Save option is enabled.
- Improved performance of tabify and untabify operations.
- Cursor now moved if it is on a location that is deleted by the code formatter.
- Added Formatting > Empty Lines At End Of File option.
- Fixed Find Extras context menu not correctly showing the text that will be searched for.
- Added Text Editor > Formatting > Use .clang-format File formatting option.
- Auto comment no longer activates when in block selection mode.
- Fixed crash when using a display with a 16-bit color depth.
- Fixed HUD windows not closing when all docked windows have been closed or removed.
- Fixed crash when changing active projects while Source Navigator is running.
- Check boxes in project system dialogs can now be toggled by a single click.
- Fixed menu key not opening context menu in watch and register windows.
- Improved appearance of list view check boxes when using display scaling.
- Property editor dialogs can now be resized.
- Remove .plist files created by clang static analyzer.
- Fixed find window's file extension filter not being saved when using Find Extras options.
- Fixed find window's additional options summary not being displayed when options are concealed.
- Find window's additional options summary now includes file extension filter.
- Full file path now displayed in find window's result list.
- Fixed ordering of history in package release notes.
- Fixed potential problem when multiple processes are accessing settings.
- Fixed unresponsive GUI when build generates a lot of output.
- Added File Search > Flat Search Result Output environment option.
- Fixed incorrectly located line edit in list views.
- Fixed crash when running on an Ubuntu 14.04 system using KDE window manager.
- Fixed broken license activation and management when Use External GCC option is enabled.
- Added Environment > Find and Replace > Greedy Regular Expressions environment option.
- Add support for Cortex-R7, Cortex-R8, Cortex-A15 and Cortex-A17 processor cores.
- Added "V8M Has DSP Instructions" project option.
- Added "V8M Mainline" and "FPv5-SP-D16" library build variants.
- Fix tdata placement in Cortex-M placement files.
- Fixed crash when connecting to J-Link from 32-bit Windows variant.
- Documented the file format for the "Type Interpretation File" project property.
- Fixed crash if something is entered in the disassembly window's expression input when not debugging.
- Fixed display of multi-line messages in output window's task view.
- Code editor suggestions now inserted on all lines when in block edit mode.
- Code editor replace all now only replaces text within block when in block selection mode.
- WebKit web browser now uses display scaling factor.
- Show Large Icons In Toolbars option now applies to docking windows.
- Added keyboard shortcut editor to environment options dialog.
- Fixed crash that occured when cancelling the new project wizard when on the edit common project settings page.
- Fixed code editor suggestion popup not restoring opacity when ctrl key is released.
- Pasting of a block selection is now done as a block insertion even if text editor is not in block edit mode.
- Fixed text terminal not staying at end of file when maximum line limit is reached.
- Added missing close button on code editor find dialog.
- Pasting of a block selection is now done as a block insertion even if the text editor has lost focus.
- Add environment option to enable the text editor to display section headers of ELF files.
- Fixed generation of unexpected characters when composing a character with ` ' or ^ keys.
- Fixed wireless network interfaces not being included in list of network adapters on Windows.
- Updated the LLVM/Clang tools build to use the 5.0.0 source release.
- The inttypes.h header file now includes stdint.h as per the c99 standard.
- Added "Math Errno" project option.
- Dependency files are now deleted on project rebuild/clean.
- Fixed generation of symbols when address_symbol and size_symbol attributes are used in a memory map or section placement files.
- Fixed "Raise Interrupt" with Cortex-M simulator.
- Fixed crash with IAR v8 generated elf files.
- Fixed usage of brackets in debug watch expressions.
- Additional load files can be relative to the project directory.
- Fixed crash when scrolling the disassembly window with the mouse wheel when debugger is not running.
- Added Text Editor > Formatting > Additional Formatting Styles environment option.
- Added case sensitivity, whole word and regular expression options to code edit's incremental search dialog.
- Code editor's incremental search dialog no longer resets find dialog settings.
- Fixed drag and drop of file onto a project explorer file node from an external program.
- Fixed loss of focus when an expanded project explorer node is deleted.
- Fixed renaming of build configurations not applying when clicking on another build configuration after change.
- Modified macOS text editor cursor key mapping to be more like other macOS text editors.
- Double clicking on company logo images in package manager and new project wizard now has no effect.
- Fixed update of registers window status message when no registers are selected.
- Fixed running of build command lines containing a '>' output redirection character.
- Fixed command line property editor.
- Added static_assert definition to assert.h.
- Fixed crash when Folder Options node is selected in project explorer and Open Solution in Editor is activated.
- Dynamic macros are now expanded in property editor macro preview.
- Added RelInputDir and FolderPath macros.
- Added empty solution project template.
- Added missing __powidf2 and __powisf2 compiler helper functions.
- Fixed crash using Debug | Restart with the simulator target before startup breakpoint is hit.
- Fixed crash using Target | Attach Debugger with J-Trace target.
- Fixed bug in backtracing code which caused local variables to be displayed incorrectly.
- CWSys object can now be used from crossload script.
- Local, global, auto and watch window columns are now independently configurable.
- Fixed display of signed 32-bit integer variables on 64-bit Linux and macOS hosts.
- Fixed Cortex-M simulator return from exception when using both main and process stack.
- Speed up single stepping of large programs when there are many unfound symbols in watch window.
- Add "Auto" capability to SWO baud rate project property.
- Changed values in variable and register windows are now identified by red text rather than a red background.
- Avoid memory and watch window update during download.
- Improve speed of disassembly when source files cannot be found.
- Added -reset option to CrossLoad.
- Smaller up and down buttons in property window.
- Shift+Tab now works when text editor is in block selection mode.
- Indent when text editor is in block selection mode now aligns to the indent size setting.
- Highlight all selected text now works when text is selected by keyboard.
- Fixed opening of files using macOS Finder.
- Improved opening of files from the command line.
- Fixed crash in text editor when moving left a word at a time.
- File extension comparisons for project, package and archive files are now case insensitive.
- External diff tool runs as a detached process.
- Fixed crash in code outline window when viewing an XML file containing a syntax error.
- Add "Copy Full Path" to context menu in project explorer.
- Find in files on solution will not search object and library files.
- Fixed crash reporter hanging if report submission fails.
- Environment option descriptions are now selectable.
- Improved performance of text editor brace matching in long files.
- Stop accessing address zero on debug reset on Cortex-M devices.
- Add "Starting Stack Pointer Value" debug project property.
- Macro viewer in property editor now has horizontal scroll bar.
- Fixed blank entries in propery editor's build configuration combo box (macOS only).
- Hyperlinks in property editor's description fields now open in an external browser.
- Highlighted finds are now local to each text editor.
- Fixed text editor match delimiter and extend selection operation (Shift+Ctrl+]).
- Fixed moving of popup windows displayed when project is loading.
- Fixed Delete key not deleting selected text when cursor is at the end of the file.
- Fixed crash running installer on Linux when KDE plugins are installed on the system.
- Windows version no longer requires the Universal C Runtime update to be installed.
- Updated macOS code signing certificates.
- Fix generating additional output file when building with "Use External GCC".
- Updated the GCC/BINUTILS tools build to use GNU ARM Embedded Toolchain 6-2017-q2-update source release.
- Updated LLVM/Clang to version 4.0.1.
- C runtime start code now has an optional call to an external function named InitializeUserMemorySections if INITIALIZE_USER_SECTIONS is defined.
- Fix bug locating to assembly code source files.
- Locals window update when accessing variables that are in restricted memory ranges.
- Check syntax option is now enabled on files with .html extension.
- Find extras menu order now the same in context menu as it is in the main menu.
- Fixed certain Alt key accelerators not working on macOS.
- Fixed index problems introduced in version 4.0.2.
- Memory window size warning can be disabled and is now only shown when the size changes.
- Fixed crash when the memory diff dialog is shown after download verification has failed.
- Fixed incorrect calculation of memory usage window cell height when using high DPI fonts.
- Fixed crashes caused by uncaught exceptions (Linux only).
- Fixed incorrect width of editor margin when using Windows scaling.
- Fixed pressing tab key while in block edit mode.
- Fixed occasional randomly placed tooltips in code editor.
- Added Text Editor > Editing > Tab Key Indents Preprocessor Directives environment option.
- Fixed text editor crash when selecting and deleting past end of file with virtual space enabled.
- Fixed text editor scrolling to the far left column when text is selected and the mouse is moved.
- The Code Outline window now uses the same parser as the Source Navigator this has
improved C++ support but has removed conditional preprocessor directives.
- The Code Outline window can now display doxygen style comments in the Preview pane.
- Fixed crash showing symbols browser for IAR generated executables.
- Opening studio from shortcut when Allow Multiple Studios is set to No and studio is already running now unminimizes and raises main window to the top.
- Can now close the solution whilst the Source Navigator or Find References windows are active.
- Statistics in the Project Explorer displays the sum of the files sizes of the containing folder node.
- Improved error message reporting when studio startup fails.
- Added "Export Makefile" to project build context menu.
- Reworked compiler driver command line options.
- Fixed the 64-bit Windows J-Link DLL not being found after it moved location in the V6.16 J-Link software release.
- Fixed crash when auto disconnecting simulator before simulator has stopped.
- Holding the shift key while scrolling the memory window with the mouse scroll wheel now locks the start address.
- Added Debug > Memory Window > Scroll Wheel Modifies Start Address environment option.
- Fixed text editor cursor color when using CrossWorks Dark color scheme.
- Added Insert Cursor and Overwrite Cursor colors to editor color schemes.
- Fixed text editor repaint when highlight cursor line mode is enabled.
- Fixed display of large toolbar icons.
- Fixed activation of popup toolbar icons.
- Fixed path property editor when using scaling on Windows.
- The text editor line number font size now scales with the main text editor font size.
- Project properties dialog now remembers splitter placement.
- Improved support for Windows scaling.
- Fixed code completion suggestion popup appearing on the wrong display on multi-display systems.
- Fixed Edit > Selection > Tabify.
- Added text editor block selection and edit.
- Fixed File > Recent Files and File > Recent Projects not selecting first element of menu when activated by keyboard.
- Fixed Command+W not closing current editor on macOS.
- Improved macOS clipboard support.
- Avoid auto loading externally modified project file during build.
- Grey out goto definition (and others) when indexer is running.
- Fixed window group Close All Windows option not recording in session file that windows have been closed.
- Fixed excessively fast vertical scroll wheel scrolling in text output windows.
- Editor dock positions are now restored when solution is loaded.
- Fixed activated licenses not being remembered on Linux.
- Fast, new look user interface.
- Native 64-bit Windows, macOS and Linux versions.
- macOS Retina displays now supported.
- New WebKit based help viewer.
- GNU ARM Embedded Toolchain version 6.
- LLVM/Clang version 4 compiler.
- Brace matching now takes into account inactive code lines.
- Inactive code highlighting now updates as you type.
- Added Text Editor > Save > Default Line Endings environment option.
- Added different bitmaps to the project window for executable, library and staging project types.
- Build detects when files have been excluded/included and cut/pasted into projects.
- Project explorer paste file onto file will add it to the containing folder.
- The source browser window has renamed the Stack column to Frame Size.
- Added Code, Data and Const size columns to the source browser window.
- Added Pre-Build Command and Post-Build Command project options.
- Added Post-Archive Command project options.
- Added environment option Enable All Warnings command line option.
- Added environment option Enforce ANSI Checking command line option.
- Changed default for Emit Relocations to Yes.
- Removed STLPort from the distribution. This is available as a library package.
- Changed Printf Floating Point Supported project option to select between Float and Double support.
- Changed default for Omit Frame Pointer to Yes.
- Added Access Variables Within Memory Map Only project property.
- Added Copy To Clipboard to memory window.
- Single stepping will step again if there is more then one instruction sequence associated with a source line of code.
- The Auto Update feature of the execution profile window uses the J-Trace PRO streaming feature.
- Added locate next/prev source/instruction buttons to execution trace window.
- Added function call and return entries to execution trace window.