Janus/Ada 3.2.0 Preview Available
July 10, 2017
by Randy Brukardt
A preview release of Janus/Ada 3.2.0 is now available to current users. For users
with up-to-date support agreements (including those in their first 90 days of ownership),
your existing key will unlock the preview. For users that reported critical bugs
fixed in this version, you should be receiving an unlock key. For everyone else,
now might be a good time to renew your Software Support agreement.
You might be wondering what a preview release is. What this means is that we
don't intend to release this specific version after a testing period; rather it
represents a snapshot of a point during development. It should get a number of
additional new features before release.
However, a preview release is constructed and tested to the same standards as
a beta test release. (A development snapshot is tested to a lower standard, as
they usually are issued to fix critical bugs for specific customers; if the bug
is really critical, the customer probably can't wait for complete testing to be
So, then, why a preview? There are serveral reasons, the most important of
which is that we've been doing a lot of changes to the internals of the compiler.
These are valuable in that no only do they make the compiler less likely to
process code incorrectly, they also enable future work on features like aspect
specifications, conditional expressions, and stream attributes. We've tested these
changes with everything we've got – but that only covers a small percentage of
possibilities. It'll be helpful to get feedback on any problems that we've
We've also worked on the ease-of-use of the compiler and tools, making default
values for options more sensible, and in reorganizing warnings so that potential
problems and interesting information are presented differently. Feedback on those
changes is also welcome.
Finally, a pragmatic reason: we needed to package a compiler for several users
that had critical bugs. Usually, we'd just make a development snapshot version for
them, but in this case there seemed to be enough value to make that compiler
available to everyone.
As always, the detailed changes from the previous release (3.1.2) can be found
in the Readme.Txt file included with the compiler. We include some highlights here.
- Ada 2012 syntax and semantics are now the default. The new /Y7 option can be
used to set Ada 2007 mode, the (previous) /Y5 option sets Ada 95 mode.
- Some warnings have been reclassified as “informational messages”.
These are messages that do not necessarily need action (some organizations require
removing all warnings from code, and some of the informational messages are not
practical to remove in all circumstances). These are separately controlled with
the /YI option; the general suppress warnings option (/W) also suppresses these
- A number of additional Ada 2007 and Ada 2012 packages are now supported,
including Ada.Directories, Ada.Calendar.Formatting, Ada.Environment_Variables,
and several others.
- Code Quality warnings have been added for situations where the actual code is
unlikely to be what was intended. These situations most likely represent bugs in
the program. See the article Code Quality Warnings:
Highlighting Likely Bugs before They Bite extended description of these
As always, contact us if you have