IAR Embedded Workbench for Eclipse (EWARM version 8.x)
Known issues
- Manually specifying MISRA options in the Compiler Extra Options field requires the global MISRA settings to be turned off. (ECL-2929)
- Eclipse Expressions View, Variables View and mouse hover fails to properly display unique_ptr and vectors (ECL-2766)
- TrustZone options are not supported yet. (ECL-2686)
- The MISRA options in the GUI cannot be overridden per-file. The compiler and linker "Extra Options" field can be used to specify MISRA flags per file or folder manually. When this happens, the MISRA options in the GUI need to be turned off, and only the Extra Options should be used. Please refer to the Embedded Workbench Misra C Reference guides for details on the command line option syntax. (ECL-2682)
- The General > Tracing preference page might be missing when installing our plugins in the Eclipse CDT distribution. (ECL-2668)
- Using source file or source folder names containing spaces is not supported by the Gnu Makefile builder and will result a linker error. See http://savannah.gnu.org/bugs/?712 (ECL-2664)
- Parts of the Eclipse help option reference are out of date. Please refer to the Embedded Workbench guides for up to date documentation. (ECL-2655)
- There is no support for TI:s MSP-FET and XDS debug probes. (ECL-2637)
- Excluding / including a source file from the project will cause recompilation of all files because of a known Eclipse bug: https://bugs.eclipse.org/bugs/show_bug.cgi?id=193286 . Also note that object files for the excluded sources will not be automatically removed from the build output folder. (ECL-2625)
- There is no support the CMSIS-DAP debugger probe. (ECL-2503)
- Certain debugger macros cannot be used without deadlocking the Eclipse UI, for example __messageBoxYesNo. The deadlock can be broken by terminating the CSpyServer2.exe process, although this will terminate the debug session. (ECL-2465)
- The view id of C-SPY views (e.g. "C-SPY Locals") has changed, and these views will no longer work. The workaround is to close these views, and open the corresponding new views from the Window → Show C-SPY View... menu. (ECL-2404)
- Per-file C-RUN settings are not yet supported (ECL-2190)
- The ST-LINK probe selection dialog is not supported in Eclipse. A probe must be selected via its serial number. (ECL-2047)
- Under specific conditions, a breakpoint failing to install in the current debug session might cause the debugger to display an incorrect source file when the target suspends. If this occurs, a workaround is to delete all breakpoints from the Breakpoints view and restart the debug session. (ECL-1947)
- A C-SPY debugger launch will only succeed if the executable is inside of the project being debugged. A workaround is to create a linked resource inside the project pointing to the executable, and enter the project-relative resource path in the Executable field of the launch configuration. (ECL-1816)
- Multi-file compilation is only supported for the entire project. (ECL-1811)
- Using the "@" placement operator in a function declaration will result in a syntax error being reported by the CDT indexer. The workaround is to use a #pragma location instead. (ECL-1801)
- In projects which use many/long include paths, the compiler command line might exceed system limits, which in turn might cause the Eclipse CDT Internal Builder to truncate it. A workaround is to build the project using make, via Project > Properties > C/C++ Build > Tool Chain Editor > Current builder, by setting it to Gnu Make Builder. For further information about Eclipse CDT and command line length, see https://bugs.eclipse.org/bugs/show_bug.cgi?id=72965 . (ECL-1794)
- The Debugger settings tabs do not support Eclipse build variables syntax (e.g. ${ProjName}). However, EW variables are supported ($TOOLKIT_DIR$, etc). (ECL-1650)
- Binaries created via the Output Converter options are not displayed in the project Binaries group. (ECL-1581)
- The Embedded Workbench "Project > Download" submenu is not available in Eclipse yet (download without debug, erase memory). (ECL-1235)
- When the "@" placement operator is used in a declaration, the CDT Indexer will also report a dummy char * @ variable declaration after it. (ECL-1193)
- The CDT Variables view might not display a parent class correctly in some cases. Use the C-SPY Locals view instead. (ECL-740)
- There are several Eclipse issues affecting Parallel Build: post-build actions will not run (see Eclipse bug https://bugs.eclipse.org/bugs/show_bug.cgi?id=408948), a "build error: null" message is displayed at times (see https://bugs.eclipse.org/bugs/show_bug.cgi?id=289048) and under some conditions, building a project might always result in a full rebuild (see https://bugs.eclipse.org/bugs/show_bug.cgi?id=217674). (ECL-164)
Resolved issues
- Fixed an issue where attempting to read the compiler and/or C-STAT version information would cause an UnsatisfiedLinkError if Java 9 or later was used. (ECL-2931, resolved 2019-10-22)
- The plugins will now try to recover from errors occurring when reading Windows versions of tools, instead of causing a fatal failure when building / importing. It is recommended that Eclipse is run with administrator rights if such failures should occur. (ECL-2887, resolved 2019-08-22)
- Fixed an issue where an exception might be thrown when browsing the Info Center example page. (ECL-2885, resolved 2019-08-13)
- Fixed an issue in the J-Link where the drv_interface_speed would not be stored correctly when Fixed or Adaptive were chosen. (ECL-2881, resolved 2019-08-08)
- Fixed an issue where a\ ClassCastException might be thrown when clicking on the device information in a project while the Properties view was open. (ECL-2876, resolved 2019-07-01)
- The Synergy toolchain integration has been updated to support new features of e2studio 7.x (ECL-2854, resolved 2019-04-09)
- Fixed an issue where the Output Converter options might cause a build error when used on projects generated via Synergy. (ECL-2841, resolved 2019-02-11)
- The debugger now automatically include the options for drv_mtb_regbase, drv_mtb_dwtregbase, drv_mtb_minramaddr and drv_mtb_maxramaddr. (ECL-2838, resolved 2019-02-08)
- The project importer will now always read the value of the Linker Configuration File option in imported projects, regardless of the state of the corresponding "Override" checkbox. (ECL-2837, resolved 2019-02-21)
- Fixed an issue where opening a context menu might on some C-RUN message might result in an exception (ECL-2814, resolved 2018-11-16)
- Fixed an issue where certain CPU/FPU combinations could not be migrated correctly from EWARM 7.x legacy Eclipse projects. (ECL-2777, resolved 2018-09-19)
- Fixed an issue where a RejectedExecutionException would be thrown when clicking on a stack frame with no source. (ECL-2765, resolved 2018-08-31)
- Fixed an issue where the FPU settings could be incorrect after a project migration from Embedded Workbench for ARM 7.x and/or a Synergy project generation. (ECL-2763, resolved 2018-09-03)
- The compiler built-in include paths are now properly detected when MISRA checks are enabled. (ECL-2761, resolved 2018-08-30)
- Fixed an issue where the compiler built-in include paths would fail to be collected by the Eclipse code indexer if the compiler --strict option was used. (ECL-2749, resolved 2018-08-16)
- Fixed an issue where only the topmost stack frame would be retrieved when the target suspended. (ECL-2746, resolved 2018-08-10)
- Fixed an issue which in some cases prevented the built-in include paths of a project to be updated on Eclipse startup. (ECL-2742, resolved 2018-08-09)
- The IAR Plugin Manager now supports Eclipse Photon. (ECL-2730, resolved 2018-08-01)
- C-STAT correctly handles .c and .cpp files when invoking C-STAT with language option set to "Auto (extesion-based)" (ECL-2726, resolved 2018-06-29)
- Column sorting in C-SPY views is now supported. (ECL-2725, resolved 2018-06-29)
- Files have been renamed during the build sequence to avoid files with double extensions. (ECL-2724, resolved 2018-06-29)
- Fixed an issue where the canvas in C-SPY views might get corrupted. (ECL-2715, resolved 2018-06-15)
- Fixed a syntax error in the makefiles generated by the Gnu Makefile Builder which would be detected when running them in Cygwin make. Please note though that the IAR Eclipse plugins are only tested using MinGW make utility version 3.81, so compatibility with Cygwin cannot be guaranteed. (ECL-2699, resolved 2018-06-04)
- FreeRtos is now supported. (ECL-2683, resolved 2018-09-04)
- The generated makefiles when building using the Gnu Makefile Builder will now be generated in a suitable format if Cygwin is detected in the system PATH environment variable. (ECL-2671, resolved 2018-06-14)
- Support for generating debug traces for IAR Eclipse Plugins. The format is compatible with the Chrome Trace Format. It is enabled by setting the Eclipse debug option com.iar.ide.common/debug/chrometrace to true in the .options file, or by selecting it in Window → Preferences → General → Tracing → Enable tracing → IAR Toolchain and Debugger Tracing. (ECL-2670, resolved 2018-04-17)
- The built-in include paths for projects that use the Auto language option now also contain the "cpp" folder. (ECL-2666, resolved 2019-10-08)
- Fixed an issue where the "Terminate debugger" job could deadlock, requiring manual termination of the debugger server process. The debugger process will be forcibly terminated in those cases, and a warning will be logged in the Error View. (ECL-2665, resolved 2018-04-13)
- The Gnu Makefile Builder now generates linker .xcl files correctly when the configuration being built has a space in its name. (ECL-2663, resolved 2018-04-11)
- Fixed an issue where C-STAT would fail to run under Eclipse for projects that use the Gnu Makefile Builder, or projects that use ielftool. (ECL-2656, resolved 2018-04-10)
- The available format names in the "Output Converter" section of Linker settings have been corrected to match Embedded Workbench. (ECL-2651, resolved 2018-04-09)
- When building using the Gnu Makefile Builder, the generated makefiles will now use a .xcl input file to read linker arguments in order to avoid command line length issues (ECL-2632, resolved 2018-04-06)
- Fixed an issue which could cause Eclipse to become unresponsive while using the C-RUN view. (ECL-2620, resolved 2018-03-06)
- The Apache Thrift library has been upgraded to version 0.11.0 (ECL-2618, resolved 2018-03-06)
- The ETM and SWO buttons in the Eclipse toolbar now opens the corresponding configuration dialog (ECL-2616, resolved 2018-06-15)
- Fixed an issue with the IAR Plugin Manager which caused the installation path to the Embedded Workbench for ARM 8.x installation to not being setup when Eclipse started. When installing in Renesas e2studio, please ensure that the IAR Plugin Manager is updated to its latest version available at http://eclipse-update.iar.com/plugin-manager/1.0 (ECL-2613, resolved 2018-02-27)
- Fixed an issue where a NoClassDefFoundError could be thrown when starting the debugger after having upgraded from old releases of the Embedded Workbench for ARM 8.x Eclipse plugins. (ECL-2612, resolved 2018-03-02)
- Fixed an Eclipse incompatibility where a static library project cannot be converted to an executable project. (ECL-2611, resolved 2019-11-11)
- The additional include path required by the latest versions of the CMSIS library is now added to projects where "Use CMSIS" is selected. (ECL-2609, resolved 2018-02-26)
- Fixed a bug where changing a General option might not always cause the entire project to be rebuilt. (ECL-2608, resolved 2018-02-14)
- Using the --preprocess option no longer causes an exception when collecting the compiler's built-in include paths. (ECL-2601, resolved 2018-01-30)
- The numpad enter key is now correctly handled when editing e.g. expressions in C-SPY views. (ECL-2600, resolved 2018-01-29)
- Fixed an issue which could in some cases prevent the debugger from starting in Renesas e2studio. (ECL-2577, resolved 2017-12-15)
- Non-fatal error codes during flashing no longer fail the entire debugger startup sequence. (ECL-2575, resolved 2017-12-11)
- Devices requiring more than one default C-SPY macro file at startup will now work correctly. (ECL-2572, resolved 2017-12-08)
- Fixed an issue which could in some cases cause a workspace rule exception to be thrown when modifying linker options. (ECL-2559, resolved 2017-11-23)
- Fixed an issue where a "Unrecognized disassembly line" error could be repeatedly logged. (ECL-2558, resolved 2019-11-04)
- There is now a Java system property which can be used to set the Embedded Workbench for ARM installation path when e.g. using the CDT headless builder.
Use iar.sdkprovider.arm.v8.location for the EWARM 8.x plugins, and iar.sdkprovider.arm.location for the EWARM 7.x plugins. (ECL-2554, resolved 2017-11-17)
- The C-SPY view category is now available again. (ECL-2550, resolved 2017-11-10)
- Fixed an issue where the NEON option would not be set correctly for some devices. (ECL-2547, resolved 2017-11-10)
- Fixed an issue where the "Default breakpoint type" setting would be enabled incorrectly in the I-jet debug settings. (ECL-2542, resolved 2017-10-30)
- The IAR Plugin Manager now shows the compatible versions of Embedded Workbench for each target in the target name. (ECL-2526, resolved 2017-10-13)
- The Cortex-R52 core is now supported in the Eclipse plugins too. (ECL-2524, resolved 2017-10-11)
- Debugger driver menus are no longer shown at startup. They will appear as soon as a driver is being used. (ECL-2518, resolved 2017-10-16)
- Fixed an issue where a toolchain path dialog could be unnecessarily displayed multiple times. (ECL-2516, resolved 2017-10-10)
- Release notes are now being generated for all IAR build integration plugins. (ECL-2513, resolved 2017-10-04)
- Fixed an issue where a java.lang.NoSuchMethodError would be thrown when the plugins were installed in Renesas e2studio. (ECL-2505, resolved 2017-10-04)
- "Leave target running" is now supported in the debugger driver menu. It requires Embedded Workbench for ARM 8.20.1 or newer in order to work. (ECL-2485, resolved 2017-09-29)
- Fixed an issue which might cause an exception to be thrown when opening the C-SPY Code Coverage view. (ECL-2483, resolved 2017-09-06)
- "Attach to target" now works correctly. It requires Embedded Workbench for ARM 8.11.3 or newer in order to work. (ECL-2475, resolved 2017-09-07)
- Fixed an issue which could cause the debugger to deadlock at early startup, before any log message could be printed. (ECL-2471, resolved 2017-08-17)
- The file importer.properties can now contain relative paths (relative to the Eclipse project), and any existing values in the files are not overwritten when updating projects. (ECL-2445, resolved 2018-03-21)
- The Terminal I/O window will now filter out any NUL bytes received by the target program on standard output/standard error. This is because any NUL bytes written to the Eclipse console window will prevent the text in the window from being copied correctly. (ECL-2443, resolved 2017-06-29)
- Autostep now works correctly (ECL-2437, resolved 2017-10-17)
- The CDT indexer now resolves standard library symbols correctly. (ECL-2432, resolved 2017-06-19)
- Enabling the "Advanced SIMD" option and successfully switching to a CPU that does not support it no longer causes the "--cpu" option to disappear from the command line. (ECL-2426, resolved 2017-06-13)
- The "DSP Extension" option is now supported. (ECL-2422, resolved 2017-06-12)
- Fixed an issue where in some cases a breakpoint could get duplicated when being disabled or enabled. (ECL-2419, resolved 2017-05-29)
- The debugger no longer attempts to open an invalid source file when a variable's value is modified in the Live Watch view. (ECL-2417, resolved 2017-10-03)
- Fixed an issue where the "Use setup macros" button would have no effect. (ECL-2415, resolved 2017-05-16)
- Resizing C-SPY views now works as expected even when the horizontal scrollbar appears/disappears. (ECL-2413, resolved 2018-01-30)
- The Debug View will now unfold and select the current stack frame even if "Run to" option is not selected in the current launch configuration. (ECL-2412, resolved 2017-05-21)
- Fixed an issue where certain core and FPU combinations could not be built correctly. (ECL-2411, resolved 2017-05-16)
- Fixed an issue where an IllegalArgumentException could be thrown when installing a Simulator breakpoint in a J-Link debug session. (ECL-2405, resolved 2017-05-18)
- Fixed a bug which prevented in some cases the error reporter dialog from appearing. (ECL-2400, resolved 2017-04-28)
- Device selection wizard page is now visible for CDT project templates too. (ECL-2397, resolved 2017-04-25)
- Fixed an issue which prevented debugger startup macros to be loaded. (ECL-2394, resolved 2017-04-25)
- The cJTAG interface is now available for the I-jet probe (ECL-2301, resolved 2018-06-05)
- The Memory view Signed, Unsigned and Hex Integer renderings will now display correct values also for big-endian targets. (ECL-2233, resolved 2016-10-27)
- Fixed an issue with the Memory view where reading a single unmapped location could mark the entire surrounding block as "unreadable". (ECL-2231, resolved 2016-10-27)
- Overflows are now supported in the Timeline view. (ECL-2223, resolved 2017-04-04)
- The toolchain restart dialog in the IAR Embedded Workbench preference page will now use the Eclipse product name. (ECL-2212, resolved 2016-09-29)
- C-SPY user macros are no longer being invoked at startup when attaching to a running target. (ECL-2195, resolved 2016-08-30)
- Prevented a warning when multiple instances of the same element are present in a .menu file (ECL-2187, resolved 2016-08-12)
- Fixed an exception which could be triggered when opening the Breakpoints tab in the I-jet driver settings. (ECL-2185, resolved 2016-08-10)
- Fixed an issue which could prevent debugger configuration options to be removed correctly. (ECL-2183, resolved 2016-08-04)
- The IAR Embedded Workbench preference page now supports Eclipse variables like eclipse_loc or workspace_loc when specifying installation paths. (ECL-2176, resolved 2016-07-27)
- Debug Trace windows are now fully supported with Eclipse and no longer need additional flags to be specified in the debugger options. (ECL-2155, resolved 2017-04-19)
- Fixed an issue which would cause FPU values to appear as "None" in the imported projects. (ECL-2136, resolved 2017-11-08)
- Source indexing is now disabled while importing Embedded Workbench projects, and re-enabled when import is complete. (ECL-2133, resolved 2016-05-09)
- The memory will now update its contents automatically when receiving a memory changed event (as a result of e.g. editing the value of a variable). (ECL-2117, resolved 2016-10-26)
- The "Override DDF file" debugger option is now supported. (ECL-2112, resolved 2016-04-15)
- The big-endian format options --BE8 and --BE32 are now automatically added to launch configurations to match the project settings. (ECL-2110, resolved 2016-08-31)
- Switching the supported device for a project no longer causes an assertion when specific values for the FPU option are being applied. (ECL-2059, resolved 2015-11-19)
- Fixed an issue where Eclipse would not start if the installation of Embedded Workbench being used was removed. (ECL-2058, resolved 2015-11-13)
- Macro expansions (e.g. $PROJ_DIR$) in the Library Configuration>Configuration file option are now expanded correctly. (ECL-2052, resolved 2015-11-03)
- Flash breakpoints are now supported when running against Embedded Workbench for ARM version 7.60.1 and newer. (ECL-2048, resolved 2016-02-11)
- Fixed an issue where the debugger startup could take longer than expected on specific devices. (ECL-2035, resolved 2015-09-28)
- Fixed an issue which would cause an exception to be thrown when right-clicking on a project right after Eclipse startup. (ECL-2027, resolved 2015-09-14)
- Fixed an issue where the linker "--threaded_lib" option could not be generated even if the corresponding General option was checked. (ECL-2021, resolved 2015-09-03)
- The Timeline view now features a "Select Graph" entries in its context menu, allowing users to choose between different graph styles (connected lines, histogram, etc.). (ECL-2003, resolved 2018-03-28)
- Fixed an issue which would prevent the debugger to start if some specific Cortex core variants and Embedded Workbench for ARM 7.40.3 were used. (ECL-1993, resolved 2017-10-03)
- Errors on source files outside of the worspace will no longer cause the creation of a linked resource in the workspace. Note that in order to navigate to the corresponding source file, the error marker must be right-clicked, choosing "Open external location". (ECL-1991, resolved 2015-07-22)
- Fixed an issue which in some cases might cause project built-in includes and symbols to be outdated at Eclipse startup. (ECL-1982, resolved 2015-07-06)
- The _BASE_FILE_ macro is now correctly parsed by the Eclipse CDT code indexer. (ECL-1981, resolved 2015-07-06)
- Extra debugger options defined in i79 files are now supported. (ECL-1977, resolved 2015-07-08)
- The J-Link USB and TCP/IP "Serial number" options are now available. (ECL-1975, resolved 2018-02-14)
- The FPU "D registers" option is now supported. (ECL-1969, resolved 2017-04-19)
- Fixed an issue which could cause Eclipse to deadlock on startup. (ECL-1956, resolved 2015-05-21)
- The debug server's working directory is now set to the project being debugged. (ECL-1955, resolved 2017-10-03)
- The J-Link menu is now displayed while debugging. (ECL-1953, resolved 2015-04-17)
- The IAR plugins now require Java 1.7 or newer. (ECL-1930, resolved 2015-03-30)
- The project importer will now implicitly assign a value of 1 to defined symbols with no value when they are imported, in order to ensure consistency between the code indexer and the compiler. (ECL-1926, resolved 2015-03-02)
- SWO speed defaults defined in i79 files are now supported. (ECL-1917, resolved 2015-07-08)
- The J-Link menu item "Disable interrupts when stepping" is now supported. This functionality requires EWARM 7.40.3 or later. (ECL-1910, resolved 2017-10-03)
- The command line preview displayed in the Debugger Configurations dialog's Extra Options tab now displays the actual command line also for projects which have not been launched yet. (ECL-1887, resolved 2017-10-03)
- The Timeline view is now correctly reset when a target reset occurs. (ECL-1876, resolved 2015-04-09)
- The Timeline view can now display multiple channels correctly when using I-scope. (ECL-1852, resolved 2018-02-02)
- The launch configuration will no longer result in incorrect debugger options when a project with no device or build settings is debugged. Rather, the Extra Options tab should be used to manually provide the appropriate options. (ECL-1682, resolved 2017-10-03)
- Using the IAR plugins in a headless build no longer clutters the build output with Eclipse exceptions. (ECL-1576, resolved 2015-05-21)
- The plugins now use a Language Settings Provider to make built-in include paths and symbols visible to the code indexer. Additional settings can be found in Project > Properties > C/C++ General > Preprocessor Include Paths, Macros, etc.. (ECL-1325, resolved 2017-10-03)
- A C-SPY launch configuration can now browse to a binary which is outside of an IAR toolchain project. The project options will be used to configure the debugger. (ECL-895, resolved 2015-05-19)
- The code coverage plugin will now annotate the source code with information about which statements have been executed. (ECL-642, resolved 2018-01-10)
- The Function Profiler view is now available in Eclipse when running against Embedded Workbench for ARM 7.40.4 or newer. (ECL-536, resolved 2015-09-01)
- Source file extensions can now be customized. (ECL-521, resolved 2017-10-03)