diff options
Diffstat (limited to 'tests/iii/template-class-errors')
| -rw-r--r-- | tests/iii/template-class-errors/case.json | 8 | ||||
| -rw-r--r-- | tests/iii/template-class-errors/program.cps | 13 |
2 files changed, 21 insertions, 0 deletions
diff --git a/tests/iii/template-class-errors/case.json b/tests/iii/template-class-errors/case.json new file mode 100644 index 0000000..100438f --- /dev/null +++ b/tests/iii/template-class-errors/case.json @@ -0,0 +1,8 @@ +{ + "errors": [ + {"reason": "No matching overload for Make", "line": 10}, + {"reason": "Wrong number of template arguments for Box", "line": 11}, + {"reason": "Class template Box requires template arguments", "line": 12}, + {"reason": "Unknown or invalid template argument Nope for Box", "line": 13} + ] +} diff --git a/tests/iii/template-class-errors/program.cps b/tests/iii/template-class-errors/program.cps new file mode 100644 index 0000000..67f8db4 --- /dev/null +++ b/tests/iii/template-class-errors/program.cps @@ -0,0 +1,13 @@ +TEMPLATE <T> +CLASS Box + Value : T +ENDCLASS +TEMPLATE <T> +FUNCTION Make() RETURNS T + DECLARE Value : T + RETURN Value +ENDFUNCTION +OUTPUT Make<Box<Nope>>() +DECLARE TooMany : Box<INTEGER, REAL> +DECLARE TooFew : Box +DECLARE Unknown : Box<Nope> |
