Stratego/XT JIRA  History | Log In     View a printable version of the current page. Get help!  
Issue Details (XML | Word)

Key: STR-497
Type: Improvement Improvement
Status: Open Open
Priority: Critical Critical
Assignee: Unassigned
Reporter: Martin Bravenboer
Votes: 0
Watchers: 0
Operations

Clone this issue
Create sub-task
If you were logged in you would be able to see more operations.
Stratego/XT

No error or warning for incorrect order of strategy argument.

Created: 2006-01-01 12:10   Updated: 2008-03-31 20:39
Component/s: strc - Stratego compiler
Affects Version/s: 0.16 (Stratego Core Compiler)
Fix Version/s: 0.18M5 (Language Refinement)

Original Estimate: Unknown Remaining Estimate: Unknown Time Spent: Unknown


 Description  « Hide
Higher order strategy arguments are handled a somewhat ad-hoc way in the renaming phase of strc. In the following module, the ho argument is not renamed, which leads to a link error (or worse: a C compilation error if we use the name h-o instead of ho).

--------------------------
module foo
imports list-cons
strategies

  main =
    foo(ho)
  ; foo(ho(![]))

strategies

  foo(ho: (t -> t) * t -> t) =
    ho(![])

strategies

  ho(s) =
    s
--------------------------

This illustrates again that we badly need a more solid handling of higher order strategy arguments.

 All   Comments   Work Log   Change History      Sort Order:
Martin Bravenboer [2006-12-19 19:59]
This issue is critical for 0.17, since errors in the order of arguments are no longer reported by the C compiler due to the changes in the compilation scheme.

Martin Bravenboer [2006-12-19 20:06]
See also the example of STR-655