diff --git a/src/lpython/semantics/python_ast_to_asr.cpp b/src/lpython/semantics/python_ast_to_asr.cpp index 3af5eebcd6..fceda89d4b 100644 --- a/src/lpython/semantics/python_ast_to_asr.cpp +++ b/src/lpython/semantics/python_ast_to_asr.cpp @@ -3627,9 +3627,9 @@ class CommonVisitor : public AST::BaseVisitor { !ASRUtils::is_integer(*ASRUtils::expr_type(ASRUtils::EXPR(tmp)))) { std::string fnd = ASRUtils::type_to_str_python(ASRUtils::expr_type(ASRUtils::EXPR(tmp))); diag.add(diag::Diagnostic( - "Type mismatch in index, expected a single integer", + "Type mismatch in index, expected a single integer or slice", diag::Level::Error, diag::Stage::Semantic, { - diag::Label("type mismatch (found: '" + fnd + "', expected: 'i32')", + diag::Label("type mismatch (found: '" + fnd + "', expected: 'i32' or slice)", {tmp->loc}) }) ); diff --git a/tests/reference/asr-string_01-78629c4.json b/tests/reference/asr-string_01-78629c4.json index 8b181a1992..8cf78f4a79 100644 --- a/tests/reference/asr-string_01-78629c4.json +++ b/tests/reference/asr-string_01-78629c4.json @@ -8,6 +8,6 @@ "stdout": null, "stdout_hash": null, "stderr": "asr-string_01-78629c4.stderr", - "stderr_hash": "75e4a7ee6e09c7fa5b22705531b37c4cecc5e1294a7180b11613c9fc", + "stderr_hash": "29aa01d7370a20ada91bdb13c569434f36a0c18309700d946d89fbf0", "returncode": 2 } \ No newline at end of file diff --git a/tests/reference/asr-string_01-78629c4.stderr b/tests/reference/asr-string_01-78629c4.stderr index c51135177d..4abe3b2eb9 100644 --- a/tests/reference/asr-string_01-78629c4.stderr +++ b/tests/reference/asr-string_01-78629c4.stderr @@ -1,5 +1,5 @@ -semantic error: Type mismatch in index, expected a single integer +semantic error: Type mismatch in index, expected a single integer or slice --> tests/errors/string_01.py:3:13 | 3 | print(x[2, 5]) - | ^^^^ type mismatch (found: 'tuple[i32, i32]', expected: 'i32') + | ^^^^ type mismatch (found: 'tuple[i32, i32]', expected: 'i32' or slice) diff --git a/tests/reference/asr-test_list4-d18a7e3.json b/tests/reference/asr-test_list4-d18a7e3.json index ad45747285..af9e9f1da7 100644 --- a/tests/reference/asr-test_list4-d18a7e3.json +++ b/tests/reference/asr-test_list4-d18a7e3.json @@ -8,6 +8,6 @@ "stdout": null, "stdout_hash": null, "stderr": "asr-test_list4-d18a7e3.stderr", - "stderr_hash": "ca321da7e384252fb05ae20cc0112f5b981b66a4c77a94d0901fa96f", + "stderr_hash": "98922e9f57ab8e9d7af05424e9fdb93a9a1722114f5abb816439b161", "returncode": 2 } \ No newline at end of file diff --git a/tests/reference/asr-test_list4-d18a7e3.stderr b/tests/reference/asr-test_list4-d18a7e3.stderr index d58f7183df..b3b4683868 100644 --- a/tests/reference/asr-test_list4-d18a7e3.stderr +++ b/tests/reference/asr-test_list4-d18a7e3.stderr @@ -1,5 +1,5 @@ -semantic error: Type mismatch in index, expected a single integer +semantic error: Type mismatch in index, expected a single integer or slice --> tests/errors/test_list4.py:7:11 | 7 | x = a[0.2] - | ^^^ type mismatch (found: 'f64', expected: 'i32') + | ^^^ type mismatch (found: 'f64', expected: 'i32' or slice) diff --git a/tests/reference/asr-test_str_indexing-b200a4e.json b/tests/reference/asr-test_str_indexing-b200a4e.json index 4378d1274c..1193d8bad7 100644 --- a/tests/reference/asr-test_str_indexing-b200a4e.json +++ b/tests/reference/asr-test_str_indexing-b200a4e.json @@ -8,6 +8,6 @@ "stdout": null, "stdout_hash": null, "stderr": "asr-test_str_indexing-b200a4e.stderr", - "stderr_hash": "9dbdff50d35cb32f87924521b46535a68d8b1f45ac845161a263ea05", + "stderr_hash": "eddc45a6ba83dc10551fd9685b6ea1096828ae29f6b9cce07cfe5de1", "returncode": 2 } \ No newline at end of file diff --git a/tests/reference/asr-test_str_indexing-b200a4e.stderr b/tests/reference/asr-test_str_indexing-b200a4e.stderr index c00dcb27b9..fb521217df 100644 --- a/tests/reference/asr-test_str_indexing-b200a4e.stderr +++ b/tests/reference/asr-test_str_indexing-b200a4e.stderr @@ -1,5 +1,5 @@ -semantic error: Type mismatch in index, expected a single integer +semantic error: Type mismatch in index, expected a single integer or slice --> tests/errors/test_str_indexing.py:4:13 | 4 | print(s[1.2]) - | ^^^ type mismatch (found: 'f64', expected: 'i32') + | ^^^ type mismatch (found: 'f64', expected: 'i32' or slice)