hello,
I try to make a simple case on values defined as constant in H headers and
I get an error :
%{^
#define GL_NO_ERROR 0x0
#define GL_INVALID_ENUM 0x0500
#define GL_INVALID_VALUE 0x0501
#define GL_INVALID_OPERATION 0x0502
#define GL_STACK_OVERFLOW 0x0503
%}
// Errors
macdef GL_INVALID_ENUM = $extval (int, “GL_INVALID_ENUM”)
macdef GL_INVALID_VALUE = $extval (int, “GL_INVALID_VALUE”)
macdef GL_INVALID_OPERATION = $extval (int, “GL_INVALID_OPERATION”)
macdef GL_STACK_OVERFLOW = $extval (int, “GL_STACK_OVERFLOW”)
fn display_case(x: int): void = case+ x of
| GL_INVALID_ENUM => print(“GL_INVALID_ENUM\n”)
| GL_INVALID_VALUE => print(“GL_INVALID_VALUE\n”) // <- this pattern
match clause is redundant
| GL_INVALID_OPERATION => print(“GL_INVALID_OPERATION\n”)
| GL_STACK_OVERFLOW => print(“GL_STACK_OVERFLOW\n”)
| _ => ()
implement main() = display_case GL_INVALID_OPERATION
I get an error :
/usr/users/cydu/programming/ATS/bug/case.dats: 534(line=17, offs=5) –
581(line=17, offs=52): error(3): this pattern match clause is redundant.
exit(ATS): uncaught exception:
_2fhome_2ffac2_2fhwxi_2fresearch_2fATS_2fIMPLEMENT_2fGeizella_2fAnairiats_2fsvn_2fats_2dlang_2fsrc_2fats_error_2esats__FatalErrorException(1233)
Is it possible to make a case ?
thanks