Am 08.12.2013 um 21:07 schrieb Stephen Leake: > Georg Bauhaus <[email protected]> writes: > >> On 06.12.13 12:21, Stephen Leake wrote: >>> I'm finally working on polishing the code for a release! >> >> As an aside, it seems that expression functions are not >> working yet, and there is this comment in ada-grammar.wy: >> >> | exception_declaration >> ;; | expression_function_declaration >> | generic_declaration > > Right. > >> I might try to fix/merge/extend this, if it is basically >> placing a parenthesized expr after a function spec. > > Ok, good. > > Or post some code that serves as a test, and I'll add it to the list.
Some progress, and some observations. 1. Progress at the cost of introducing tolerance of "expression subprograms", not just expression functions; doing that seems a way to avoid new conflicts. Is it tolerable if Ada mode allows procedure expressions? 2. It turns out that the Wisi grammar needs to take LRM 4.5.7 7/3 into account. The latter permits dropping parens around the new expression forms. If they are not found around an if_expression, for example, then parsing fails: Y : Boolean := Boolean'(if True then False); vs. Y : Boolean := Boolean'((if True then False)); -- o.K. Since the Ada permission also applies to a few other places in the grammar, e.g. actual_parameter_part, it may be better to rearrange the productions a little, I think. This would, however, take some more time and some more considerations. _______________________________________________ Emacs-ada-mode mailing list [email protected] http://host114.hostmonster.com/mailman/listinfo/emacs-ada-mode_stephe-leake.org
