Development Log

  • GNAT Pro | GPS | GNATbench
    Sep 16th, 2016

    GPS: contextual menu to set watchpoint
    Right-clicking on a variable while the debugger is running will now set a watchpoint, so that the debugger stops any time the variable is modified.

  • GNAT Pro | GPS | GNATbench
    Sep 16th, 2016

    GPS: display list of mains as flat menu
    When a project (and its subprojects) have a small number of main units, and the root project is not an aggregate, we display the /Build/Project/, /Build/Run/ and /Debug/Initialize menus as a flat list of mains, rather than introduce one extra level of menu for the name of the project.

  • GNAT Pro | GPS | GNATbench
    Sep 16th, 2016

    GPS: display list of mains as flat menu
    When a project (and its subprojects) have a small number of main units, and the root project is not an aggregate, we display the /Build/Project/, /Build/Run/ and /Debug/Initialize menus as a flat list of mains, rather than introduce one extra level of menu for the name of the project.

  • GNAT Pro | GPS | GNATbench
    Sep 16th, 2016

    GPS: contextual menu to set watchpoint
    Right-clicking on a variable while the debugger is running will now set a watchpoint, so that the debugger stops any time the variable is modified.

  • CodePeer
    Sep 15th, 2016

    Messages involving loop imprecision marked low
    CodePeer is now able to identify messages where loop imprecision is involved and is making messages uncertain, which are marked low now by default instead of medium.

  • GNAT Pro | GPS | GNATbench
    Sep 14th, 2016

    GPS: new menu /File/Reset All Perspectives
    This menu restores the default window layout. This is in particular useful to reset the Debug perspective that has changed in this release of GPS.

  • GNAT Pro | GPS | GNATbench
    Sep 14th, 2016

    GPS: new menu /File/Reset All Perspectives
    This menu restores the default window layout. This is in particular useful to reset the Debug perspective that has changed in this release of GPS.

  • GNAT Pro
    Sep 14th, 2016

    Include units requiring extended Ravenscar
    The "Ravenscar-full" runtime libraries now contain language- defined and GNAT-defined packages that require the extended Ravenscar profile defined by GNAT. Specifically, Ada.Synchronous_Barriers, GNAT.Semaphores, GNAT.Bounded_Buffers, and GNAT.Bounded_Mailboxes are now available.

  • GNAT Pro | GPS | GNATbench
    Sep 13th, 2016

    GPS: GPS.Process accepts a list of args
    The Python GPS.Process() now accepts the command as a list of arguments instead of a string, which makes it easier to handle arguments with spaces (no need for quoting)

  • GNAT Pro | GPS | GNATbench
    Sep 13th, 2016

    GPS: GPS.Process accepts a list of args
    The Python GPS.Process() now accepts the command as a list of arguments instead of a string, which makes it easier to handle arguments with spaces (no need for quoting)

  • GNAT Pro
    Sep 10th, 2016

    Update Ada.Locales for RM 2012 COR:1:2016
    Update the Ada.Locales interface to conform to the RM 2012 COR:1:2016. The type definitions for Language_Code and Country_Code are now using dynamic predicates.

  • SPARK Pro
    Sep 9th, 2016

    Suppressed unnecessary warning message
    For a null default subprogram defined in the formal part of a generic unit, now GNATprove does not emit a warning about formal parameters of the subprogram being unused and/or unmodified.

  • GNAT Pro | GPS | GNATbench
    Sep 8th, 2016

    GPS: GUI enhancements to the Omnisearch
    The Omnisearch feature has received a number of enhancements:

       - A default key shortcut (control-u) brings up the omnisearch
    
       - When bringing up the omnisearch through the key shortcut
         completions start appearing even before anything is typed
         in the entry. This allows, for instance, using the arrow keys
         to select one of the currently open windows.
    
       - The size of the popup window has been increased to take up to
         2/3 of the main window. This is useful when listing directories
         with long names, for instance.
    
       - The highlighting of the fuzzy-matched characters now uses a
         color.
    
       - If the text in the global entry has been manually deleted,
         it no longer reappears next time the search is activated.
    

  • GNAT Pro | GPS | GNATbench
    Sep 8th, 2016

    GPS: new %TP macro in builder targets
    A new macro %TP is available in builder targets. It will be replaced with the name of the project file to which the main unit belongs. It is for instance used when you do not want to pass the root project to gprbuild, but directly the unit's own project

  • GNAT Pro | GPS | GNATbench
    Sep 8th, 2016

    GPS: GUI enhancements to the Omnisearch
    The Omnisearch feature has received a number of enhancements:

       - A default key shortcut (control-u) brings up the omnisearch
    
       - When bringing up the omnisearch through the key shortcut
         completions start appearing even before anything is typed
         in the entry. This allows, for instance, using the arrow keys
         to select one of the currently open windows.
    
       - The size of the popup window has been increased to take up to
         2/3 of the main window. This is useful when listing directories
         with long names, for instance.
    
       - The highlighting of the fuzzy-matched characters now uses a
         color.
    
       - If the text in the global entry has been manually deleted,
         it no longer reappears next time the search is activated.
    

  • GNAT Pro | GPS | GNATbench
    Sep 8th, 2016

    GPS: new %TP macro in builder targets
    A new macro %TP is available in builder targets. It will be replaced with the name of the project file to which the main unit belongs. It is for instance used when you do not want to pass the root project to gprbuild, but directly the unit's own project

  • CodePeer
    Sep 7th, 2016

    Performance improvement of report generation
    SQL queries have been rewritten to improve performace of report generation.

  • GNAT Pro | GPS | GNATbench
    Sep 5th, 2016

    GPS: outline option to hide parameter names
    A new setting for the Outline view allows you to hide the name of parameters in the profile of subprograms. This saves some space, and helps differentiate homonym subprograms.

  • GNAT Pro | GPS | GNATbench
    Sep 5th, 2016

    GPS: outline option to hide parameter names
    A new setting for the Outline view allows you to hide the name of parameters in the profile of subprograms. This saves some space, and helps differentiate homonym subprograms.

  • GNAT Pro | GPRbuild
    Sep 5th, 2016

    New gprname switch—RTS=
    gprname has now a switch --RTS= like all other GPR tools, as it is necessary for targets that do not have a default runtime.

  • GNAT Pro | GPRbuild
    Sep 3rd, 2016

    GPRinstall support for separate debug symbol file
    The new GPRinstall's --side-debug option can be used to write debug symbols out of executables and libraries into a separate file. If the executable to be installed is named main, then the debug information is moved into the file main.debug and is removed from the executable.

  • GNAT Pro | GPS | GNATbench
    Sep 2nd, 2016

    GPS: Pass the configuration file to the builder
    The configuration file (.cgpr) set by the "--config" command-line switch is now passed on to the builder. Also, GPS now also passes the configuration file which was automatically generated when the "--autoconf" option was given.

  • GNAT Pro | GPS | GNATbench
    Sep 2nd, 2016

    GPS: Pass the configuration file to the builder
    The configuration file (.cgpr) set by the "--config" command-line switch is now passed on to the builder. Also, GPS now also passes the configuration file which was automatically generated when the "--autoconf" option was given.

  • GNAT Pro
    Sep 1st, 2016

    Sjlj runtimes switched to back-end setjmp/longjmp
    The setjmp/longjmp (sjlj) runtimes of our gcc based ports are now all relying on the gcc core mechanisms for exception handling, with improved efficiency compared to the previous scheme.

  • GNAT Pro
    Sep 1st, 2016

    AI12-061 : iterated component associations
    Ada issue AI12-061 introduces a new construct in array aggregates allowing component associations to be parameterized by a loop variable, for example: Squares : Array (1 .. 10) of Integer := (for I in 1 .. 10 => I ** 2); type Matrix is array (Positive range <>, Positive range <>) of Float; G : constant Matrix := (for I in 1 .. 4 => (for J in 1 .. 4 => (if I=J then 1.0 else 0.0))); -- Identity matrix The expression in such an association can also be a function that returns a limited type, and the range can be specified by an 'others' choice.

  • GNAT Pro
    Sep 1st, 2016

    Removing redundant invariant check on array type
    The type invariant of a constrained array component type is no longer verified multiple times when performing invariant checks.

  • GNAT Pro | GPS | GNATbench
    Aug 31st, 2016

    GPS: search icons in GPS_CUSTOM_PATH
    Icons used in plug-ins are now also searched in any of the directories specified in the environment variable GPS_CUSTOM_PATH.

  • GNAT Pro | GPS | GNATbench
    Aug 31st, 2016

    GPS: search icons in GPS_CUSTOM_PATH
    Icons used in plug-ins are now also searched in any of the directories specified in the environment variable GPS_CUSTOM_PATH.

  • GNAT Pro
    Aug 31st, 2016

    Include package Ada.Numerics.Real_Arrays
    The Ravenscar "full" runtime libraries now include the language- defined package Ada.Numerics.Real_Arrays.

  • SPARK Pro
    Aug 29th, 2016

    Assume Initial_Condition of withed units
    When checking compilation units, we now assume that the Initial_Condition aspect of each withed unit holds. It results in more discharged verification conditions in particular on main units.

  • SPARK Pro
    Aug 29th, 2016

    Counterexamples involving quantified expressions
    Some counterexamples are now printed for universally quantified variables (in loop invariants for example).

  • GNAT Pro
    Aug 28th, 2016

    gnatbind: New elaboration order algorithm
    A new elaboration order algorithm is implemented, which is likely to be friendlier in most cases, especially with existing code that works with other compilers. It has the following useful properties: - Considering the graph of library units, each strongly connected component (SCC) is elaborated together, with no intervening units from other SCCs. In the absence of cycles in this graph, an SCC is a single library unit. If there are cycles, an SCC is a maximal group of units with cyclic dependences. Note that the nodes of this graph are library units, not library items. Cycles among library items are illegal (e.g. two specs cannot mention each other in nonlimited with clauses). Cycles among library units are legal (two packages may be mutually recursive, so long as at least one dependence is via a body. - In particular, this implies that if an SCC contains just a spec and the corresponding body, and nothing else, the body will be elaborated immediately after the spec. This is expected to result in a better elaboration order for most programs, because in this case, a call from outside the library unit cannot get ABE. - The elaboration order chosen is the same in static and dynamic mode. - Pragmas Elaborate_All (explicit and implicit) are ignored. Instead, we behave as if every legal pragma Elaborate_All were present. That is, if it would be legal to have "pragma Elaborate_All(Y);" on X, then we behave as if such a pragma exists, even if it does not.

  • GNAT Pro
    Aug 26th, 2016

    Support of Cortex-M0/M0+/M1 on arm-elf platform
    The arm-elf bareboard compiler now supports Cortex-M0, Cortex-M0+ and Cortex-M1 cores. At this time there is no provided runtimes, but users can write their own ones.

  • GNAT Pro | GPS | GNATbench
    Aug 19th, 2016

    GPS: more info when reviewing a codepeer message
    The CodePeer dialog for reviewing a single message now contains information about a message, similariliy to the dialog for reviewing multiple messages.

  • CodePeer
    Aug 19th, 2016

    More info when reviewing a message in GPS
    The GPS dialog for reviewing a single message now contains information about the message, similarly to the dialog for reviewing multiple messages.

  • GNAT Pro | GPS | GNATbench
    Aug 19th, 2016

    GPS: more info when reviewing a codepeer message
    The CodePeer dialog for reviewing a single message now contains information about a message, similariliy to the dialog for reviewing multiple messages.

  • GNAT Pro
    Aug 19th, 2016

    gnatcheck: In incremental mode, reflag errors
    In --incremental mode, if gnatcheck gives an error message on a certain file, and you run it again, it will now give the error message on that file again.

  • GNAT Pro | GPS | GNATbench
    Aug 17th, 2016

    GPS: preserve more build errors after recompiling
    When the Locations view contains build errors, and one of the files is being recompiled, the Locations view will now only update the entries for that file, rather than removing all build errors.

  • GNAT Pro | GPS | GNATbench
    Aug 17th, 2016

    GPS: preserve more build errors after recompiling
    When the Locations view contains build errors, and one of the files is being recompiled, the Locations view will now only update the entries for that file, rather than removing all build errors.

  • SPARK Pro
    Aug 16th, 2016

    Improved documentation
    The UG section 8.6.4. Proof Limitations does now better document the support for storage place attributes. In particular, it states that First_Bit, Last_Bit and Position attributes are supported but in case there is no record representation clause then their value is assumed to be nonnegative.

  • GNAT Pro | XMLAda
    Aug 16th, 2016

    schema: large values of maxOccurs
    Values of maxOccurs larger than 300 previously resulted in an XML validation error. This is instead a limitation of XML/Ada, so this has now been changed to a warning (we still recommend using "unbounded" to limit the size of the state machine, but XML/Ada will now try to build that machine and use the XSD nonetheless).

  • CodePeer
    Aug 16th, 2016

    Speedup CodePeer WebServer startup
    Startup time of CodePeer web server with large dababase was significantly reduced.

  • GNAT Pro
    Aug 16th, 2016

    Better error message on selected component
    Compiler provides a better error report on a selected component Nam.Comp which appears in an object declaration, when Nam has several visible interpretations as a function, and there is a non- visible package in the context with the same name.

  • GNAT Pro
    Aug 10th, 2016

    Removing redundant checks on type conversions
    Conversions to Standard_Integer of an attribute reference 'Pos applied to a nonstatic expression of an enumeration type do not generate a constraint check, given that the number of literals of any such type will not exceed Integer'Last.

  • GNAT Pro | GPS | GNATbench
    Aug 8th, 2016

    GPS: wrong file view for multi-drive projects
    When the 'Show files from project only' option is enabled, the Files view now correctly displays the project files that reside on multiple logical drives.

  • GNAT Pro | GPS | GNATbench
    Aug 8th, 2016

    GPS: wrong file view for multi-drive projects
    When the 'Show files from project only' option is enabled, the Files view now correctly displays the project files that reside on multiple logical drives.

  • SPARK Pro
    Aug 5th, 2016

    More fine-grain placement rules for pragma Annotate
    Previously, if pragma Annotate was placed e.g. at the start of a statement list, it would apply to the whole enclosing construct (e.g. an if statement including all branches and statements). Now it only applies to the range between the beginning of the enclosing statement and the pragma itself. This allows to e.g. apply a pragma Annotate to the condition of an if-statement, but not the other parts of the if-statement. Note that this may require changes to the placement of pragma Annotate in existing code, or more pragma Annotate than before.

  • GNAT Pro | GPS | GNATbench
    Aug 3rd, 2016

    GPS: new trace for old Xming compatibility
    A new trace "Views.No_Transient_Views" has been added. When activated (in .gps/traces.cfg or via the --traceon switch), this prevents the use of "transient" windows for floating views. This is needed mostly for compatibility with the Xming X11 server which does not allow resizing transient windows, and calculates their size wrongly. Another trace "Store_Window_Positions" has been added: this is on by default, and, when switched off, will prevent GPS from saving the size and positions of floating windows.

  • GNAT Pro | GPS | GNATbench
    Aug 3rd, 2016

    GPS: new trace for old Xming compatibility
    A new trace "Views.No_Transient_Views" has been added. When activated (in .gps/traces.cfg or via the --traceon switch), this prevents the use of "transient" windows for floating views. This is needed mostly for compatibility with the Xming X11 server which does not allow resizing transient windows, and calculates their size wrongly. Another trace "Store_Window_Positions" has been added: this is on by default, and, when switched off, will prevent GPS from saving the size and positions of floating windows.

  • GNAT Pro
    Aug 3rd, 2016

    C binding for preprocessor constant with 0. prefix
    The C and C++ bindings generated by means of the -fdump-ada-spec option now correctly handle preprocessor floating constants with 0. prefix.

  • SPARK Pro
    Aug 1st, 2016

    Support for GNAT attribute System’To_Address
    GNAT attribute System'To_Address, which is a static attribute equivalent to a call to System.Storage_Elements.To_Adress, is now supported.

  • GNAT Pro | GPS | GNATbench
    Jul 28th, 2016

    GPS: improved behavior of the ESC key
    The Escape key can now be used to close floating dialogs (such as the Search dialog, or the Preferences dialog) even when the input focus is not currently on these dialogs.

  • GNAT Pro | GPS | GNATbench
    Jul 28th, 2016

    GPS: improved behavior of the ESC key
    The Escape key can now be used to close floating dialogs (such as the Search dialog, or the Preferences dialog) even when the input focus is not currently on these dialogs.

  • SPARK Pro
    Jul 28th, 2016

    Improved precision on tagged conversion
    When a tagged type was converted, information about the value of its components was lost, and so, even when converting between types which are conceptually the same (tagged subtypes and derived types with null extension). Tagged conversion are now better handled in proof.

  • GNAT Pro
    Jul 28th, 2016

    String comparisons in static predicates
    The compiler now accepts comparison operators on strings in a static predicate aspect for string subtypes. As a result, predicate-static expressions are not any longer a proper subset of static expressions, a discrepancy that will have to be resolved by the ARG.

  • GNAT Pro | GPS | GNATbench
    Jul 27th, 2016

    GPS: Messages are displayed with different font
    CodePeer's messages with lifeage "removed" are displayed with different font to help distinguish them from regular messages.

  • GNAT Pro | GPS | GNATbench
    Jul 27th, 2016

    GPS: new “All files from prj dirs” in Files view
    A new local configuration has been added to the Files view, to show all files in any of the directories of the project. In particular, this shows the object and executable files in the object directories.

  • GNAT Pro | GPS | GNATbench
    Jul 27th, 2016

    GPS: Messages are displayed with different font
    CodePeer's messages with lifeage "removed" are displayed with different font to help distinguish them from regular messages.

  • GNAT Pro | GPS | GNATbench
    Jul 27th, 2016

    GPS: new “All files from prj dirs” in Files view
    A new local configuration has been added to the Files view, to show all files in any of the directories of the project. In particular, this shows the object and executable files in the object directories.

  • GNAT Pro | GPRbuild
    Jul 26th, 2016

    Performance improvement when building libraries
    When binding Stand-Alone Libraries, gprbuild no longer gets the time stamps of the sources and object files if they are already known, if the main project is not an aggregate project.

  • CodePeer
    Jul 23rd, 2016

    Indirect call results now show original name
    When CodePeer produces a message about an indirect or dispatching call, it used to identify the result by "Indirect_Call'Result." Now it uses the actual name used in the call, such as "P.all'Result" if it is a call through an access-to-subprogram value P, or "Prim_Op'Result" if it is a dispatching call of a primitive operation Prim_Op.

  • GNAT Pro | Libraries and Bindings
    Jul 22nd, 2016

    New MDI child signals
    New signals have been introduced in the MDI

       Signal_Before_Unfloat_Child
       Signal_Before_Destroy_Child
    
    allowing respectively to react before a child is unfloated or destroyed.

  • SPARK Pro
    Jul 21st, 2016

    Improve posting of SPARK violations
    SPARK violations are now posted on the entity that is not in SPARK rather than on the entity that will result not to be in SPARK for this violation. This is done for formal parameters of a function, return types of a function and indexes of an array.

  • CodePeer
    Jul 20th, 2016

    More precise handling of aliasing
    CodePeer handles aliasing in a more precise way. This includes detecting conditions always true or false in more cases when using complex expressions in conditions, for instance expressions involving aliased variables, and more precise handling of aliasing in a per-file mode when aliased variables are declared in a module imported by the file being analyzed.

  • GNAT Pro | GPRbuild
    Jul 19th, 2016

    New switch—no-sal-binding
    A new switch --no-sal-binding is added to gprbuild. When this switch is used gprbuild will not rebind Stand-Alone Libraries, it will reuse the files created during a previous build of the SAL, and will fail if there are missing files.

  • CodePeer
    Jul 19th, 2016

    Better display of long ranges
    When displaying very long ranges (e.g. for large floating point values), CodePeer would truncate the range completely and instead display a "[...]" only. CodePeer now displays a truncated value for the two values of the range.

  • GNAT Pro
    Jul 19th, 2016

    Efficient 64-bit integer multiplication on x86-64
    The compiler now generates the same efficient 64-bit integer multiplication on x86-64 when overflow checking is enabled as when it is disabled.

  • CodePeer
    Jul 19th, 2016

    New switch -unconstrained-fpt-overflow
    Overflow detection on unconstrained floating point types previously required the use of the compiler switch -gnateF to be enabled. This can now be enabled more easily via the codepeer switch -unconstrained-fpt-overflow which is also enabled by default at -level 4.

  • GNAT Pro
    Jul 18th, 2016

    New gnatcheck rule Membership_Tests
    A new rule Membership_Tests is added to gnatcheck. The rule flags membership test expressions. It has two parameters that allow filtering out certain kinds of membership tests.

  • GNAT Pro | GPRbuild
    Jul 18th, 2016

    Interfaces in aggregate library projects
    Attribute Interfaces is now allowed in aggregate library projects.

  • GNAT Pro
    Jul 18th, 2016

    Improved debugger module loading speed on VxWorks
    Loading modules from the debugger on VxWorks targets is now significantly faster. This enhancement assumes that the file location where the module is stored is the same for the target server as for the debugger. For users who run the debugger and the target server on different hosts, the debugger can be made to transmit the contents of the module to the target server using the following command: "set wtx load-from-gdb".

  • GNAT Pro
    Jul 16th, 2016

    New gnatcheck rule Predicate_Testing
    A new rule Predicate_Testing is added to gnatcheck. The rule flags constructs that cause predicate evaluation.

  • SPARK Pro
    Jul 16th, 2016

    Take into account contracts on abstract subprograms
    When an abstract subprogram with a classwide contract is called from an annotation, its postcondition is now available for proof.

  • SPARK Pro
    Jul 15th, 2016

    More convenient support for Coq interactive prover
    Previously, to be able to use the Coq interactive prover with SPARK, it was required to create a why3.conf file with the appropriate configuration. Now, SPARK comes with the suitable configuration already included, and this extra step is not needed any more. The Coq prover still needs to be installed separately.

  • SPARK Pro
    Jul 15th, 2016

    New GPS panel for examine menu in spark2014 tab
    Menus 'Examine ...' in GPS now open a panel similar to the basic panel displayed for proof. In particular, it allows to choose between three modes of analysis: check, check all, and flow analysis.

  • GNAT Pro | GPS | GNATbench
    Jul 13th, 2016

    GPS: Show color of messages in the Locations view
    For messages which have an associated background color (for instance compiler errors), the Locations view shows this background color on the side of the row for this message.

  • GNAT Pro | GPS | GNATbench
    Jul 13th, 2016

    GPS: Show color of messages in the Locations view
    For messages which have an associated background color (for instance compiler errors), the Locations view shows this background color on the side of the row for this message.

  • GNAT Pro
    Jul 13th, 2016

    New pragma/aspect Secondary_Stack_Size
    The new GNAT pragma and aspect Secondary_Stack_Size allows users to specify the size of the secondary stack individually for each task type in bytes where fixed secondary stack allocation is used. This allocation scheme is used on bare board and Ravenscar run- times which by default allocate a fixed percentage of the primary stack for the secondary stack.

  • GNAT Pro | GPS | GNATbench
    Jul 12th, 2016

    GPS: Breakpoints view can be displayed anywhere
    Since we can now set breakpoints even when no debugger is running, it is also useful to edit them outside of the Debug perspective.

  • GNAT Pro
    Jul 12th, 2016

    New assertion policy Suppressible
    Pragma Assertion_Policy can now specify policy Suppressible. This policy is equivalent to Ignore when compilation switch -gnatp is in effect, otherwise it behaves the same as policy Check.

  • GNAT Pro | GPS | GNATbench
    Jul 12th, 2016

    GPS: Breakpoints view can be displayed anywhere
    Since we can now set breakpoints even when no debugger is running, it is also useful to edit them outside of the Debug perspective.

  • GNAT Pro
    Jul 9th, 2016

    Forced elaboration order
    A new switch -f has been added to gnatbind. It allows the user to specify the order of elaboration, or specify additional constraints on that order.

  • GNAT Pro | GPS | GNATbench
    Jul 8th, 2016

    GPS: preserve the size of simple text input dialogs
    The size of simple text input dialogs (e.g: the 'Debug/Run' dialog) is now preserved: GPS will now restore it when the dialog is displayed again in the future (either in the current session or in a later session).

  • GNAT Pro | GPS | GNATbench
    Jul 8th, 2016

    GPS: preserve the size of simple text input dialogs
    The size of simple text input dialogs (e.g: the 'Debug/Run' dialog) is now preserved: GPS will now restore it when the dialog is displayed again in the future (either in the current session or in a later session).

  • SPARK Pro
    Jul 7th, 2016

    More fine-grained proof of checks using “and”
    Assertions, loop invariants and pre- and postconditions which consist of several parts combined with "and" or "and then", are now proved seperately by SPARK. This allows better reporting of which part of the check is unproved, and it also allows better interaction between provers, where one prover may be able to prove one part of the heck, and another one the remaining part.

  • SPARK Pro
    Jul 7th, 2016

    New mode which outputs current state of analysis
    Previously, finding out which checks are proved or unproved required rerunning the tools, which could take quite some time. We now have added a new check-box to the proof dialog which is opened after selecting the "Prove All", "Prove File" and similar menu entries. Selecting this check-box will run gnatprove as usual, but no provers will be run, only existing results will be used. In this way, this option provides a relatively quick way to assess what's currently proved and not proved. The same behavior can be achieved on the command line, by adding the switch --output-msg- only,

  • GNAT Pro | GPS | GNATbench
    Jul 6th, 2016

    GPS: changes in Bookmarks view
    You now need to double-click on a bookmark to jump to the corresponding editor, or long-click to start editing (although there is still a button in the local toolbar for that purpose). This makes it more consistent with other views in GPS like the Breakpoints view. Bookmarks are no longer sorted by default. Instead, you can use drag-and-drop to organize them in the order you want. Bookmarks can be grouped: when you drag and drop a bookmark on top of another bookmark, a new group is created that contains both. These groups can be used to organize large numbers of bookmarks. Add a filter to the Bookmarks view, to match what is done for other views. Comments can be added to bookmarks, either that an explicit toolbar button or dragging and dropping text from a source editor. A new configuration "link with editor" is also available, which automatically selects the first bookmark associated with the current editor line, whenever the latter changes.

  • GNAT Pro | GPS | GNATbench
    Jul 6th, 2016

    GPS: double-click in breakpoints to see editor
    If you double-click on a breakpoint in the Breakpoints view, GPS will show you the corresponding editor (same as using the toolbar button, but more convenient). Likewise, a long click on the breakpoint will show its details, same as clicking on the toolbar button would do.

  • GNAT Pro | GPS | GNATbench
    Jul 6th, 2016

    GPS: changes in Bookmarks view
    You now need to double-click on a bookmark to jump to the corresponding editor, or long-click to start editing (although there is still a button in the local toolbar for that purpose). This makes it more consistent with other views in GPS like the Breakpoints view. Bookmarks are no longer sorted by default. Instead, you can use drag-and-drop to organize them in the order you want. Bookmarks can be grouped: when you drag and drop a bookmark on top of another bookmark, a new group is created that contains both. These groups can be used to organize large numbers of bookmarks. Add a filter to the Bookmarks view, to match what is done for other views. Comments can be added to bookmarks, either that an explicit toolbar button or dragging and dropping text from a source editor. A new configuration "link with editor" is also available, which automatically selects the first bookmark associated with the current editor line, whenever the latter changes.

  • GNAT Pro
    Jul 6th, 2016

    New—readnever GDB command-line option
    GDB has been enhanced to accept --readnever as a command-line option. This option starts the debugger in a mode where the debugging information, is not loaded, speeding up the startup phase, at the cost of not being able to perform symbolic debugging.

  • SPARK Pro
    Jul 6th, 2016

    Support for enumeration types in counterexamples
    The counterexamples output by GNATprove when a check is not proved now display correct enumeration literals for variables of enumeration types.

  • GNAT Pro | GPS | GNATbench
    Jul 6th, 2016

    GPS: double-click in breakpoints to see editor
    If you double-click on a breakpoint in the Breakpoints view, GPS will show you the corresponding editor (same as using the toolbar button, but more convenient). Likewise, a long click on the breakpoint will show its details, same as clicking on the toolbar button would do.

  • GNAT Pro | GPS | GNATbench
    Jul 5th, 2016

    GPS: adjust score for runtime files in omnisearch
    When you search via the omnisearch, GPS will now ensure that matches in runtime files appear only after matches in user code.

  • GNAT Pro | GPS | GNATbench
    Jul 5th, 2016

    GPS: display bookmarks on the side of editors
    Lines for which a bookmark has been set will now show special highlighting in the scrollbar of editors, as well as an icon on the left side of the line, as a quick way to identify them.

  • GNAT Pro | GPS | GNATbench
    Jul 5th, 2016

    GPS: adjust score for runtime files in omnisearch
    When you search via the omnisearch, GPS will now ensure that matches in runtime files appear only after matches in user code.

  • GNAT Pro | GPS | GNATbench
    Jul 5th, 2016

    GPS: display bookmarks on the side of editors
    Lines for which a bookmark has been set will now show special highlighting in the scrollbar of editors, as well as an icon on the left side of the line, as a quick way to identify them.

  • GNAT Pro | GPRbuild
    Jul 5th, 2016

    gprls—closure
    A new switch --closure is added to gprls, to display the full paths of the sources in the closures of one or several mains.

  • GNAT Pro
    Jul 5th, 2016

    Multiple entries added in GNAT_Extended_Ravenscar
    For ravenscar-full runtime on bareboard, the protected objects can have several entries and the length of the entry queue is not limited anymore.

  • GNAT Pro | GPS | GNATbench
    Jul 4th, 2016

    GPS: new toolbar parameter for GPS.Browser.create
    A new browser can now be created with a custom toolbar. It is thus possible to add buttons via GPS.Action.button() that will only apply to this browser.

  • GNAT Pro | GPS | GNATbench
    Jul 4th, 2016

    GPS: new toolbar parameter for GPS.Browser.create
    A new browser can now be created with a custom toolbar. It is thus possible to add buttons via GPS.Action.button() that will only apply to this browser.

« Previous    1  2  3  4  5     Next »