| Summary: | [compiler] misplaced annotation before labeled callin binding is silently ignored | ||
|---|---|---|---|
| Product: | [Tools] Objectteams | Reporter: | Stephan Herrmann <stephan.herrmann> |
| Component: | OTJ | Assignee: | Stephan Herrmann <stephan.herrmann> |
| Status: | VERIFIED FIXED | QA Contact: | |
| Severity: | normal | ||
| Priority: | P3 | ||
| Version: | 2.1 | ||
| Target Milestone: | 2.1 M5 | ||
| Hardware: | Other | ||
| OS: | Linux | ||
| Whiteboard: | |||
Test and fix pushed via commit 3cef2f06214b2c4cd1af87f89c1fea4090a44939 Verified using build 2.2.0.201209221349 |
If a callin binding has both an annotation and a name: @SuppressWarnings("all") myCallin : foo <- bar; the annotation is silently ignored, whereas this works: myCallin : @SuppressWarnings("all") foo <- bar; The first example is tolerated by the parser as a byproduct of making the grammar LALR(1). It should be detected by specific checks in the parser implementation as we already do for other modifiers.