aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorgingerBill <bill@gingerbill.org>2024-05-16 15:32:15 +0100
committergingerBill <bill@gingerbill.org>2024-05-16 15:32:15 +0100
commitb2dc5cc81254b4ab194dac900ab143609ba07bac (patch)
treea26097865a458bb72d501381285d3effd2a77a78 /src
parenta344bc4c0e672d9740f5777dae862723fe269973 (diff)
Fix error reporting for enforce new switch/for syntax
Diffstat (limited to 'src')
-rw-r--r--src/check_stmt.cpp4
-rw-r--r--src/error.cpp8
2 files changed, 4 insertions, 8 deletions
diff --git a/src/check_stmt.cpp b/src/check_stmt.cpp
index 0267bdf80..23a97696d 100644
--- a/src/check_stmt.cpp
+++ b/src/check_stmt.cpp
@@ -572,7 +572,7 @@ gb_internal Type *check_assignment_variable(CheckerContext *ctx, Operand *lhs, O
error(lhs->expr, "Cannot assign to '%s'", str);
if (e && e->flags & EntityFlag_ForValue) {
- isize offset = show_error_on_line(e->token.pos, token_pos_end(e->token), "Suggestion:");
+ isize offset = show_error_on_line(e->token.pos, token_pos_end(e->token));
if (offset < 0) {
if (is_type_map(e->type)) {
error_line("\tSuggestion: Did you mean? 'for key, &%.*s in ...'\n", LIT(e->token.string));
@@ -588,7 +588,7 @@ gb_internal Type *check_assignment_variable(CheckerContext *ctx, Operand *lhs, O
}
} else if (e && e->flags & EntityFlag_SwitchValue) {
- isize offset = show_error_on_line(e->token.pos, token_pos_end(e->token), "Suggestion:");
+ isize offset = show_error_on_line(e->token.pos, token_pos_end(e->token));
if (offset < 0) {
error_line("\tSuggestion: Did you mean? 'switch &%.*s in ...'\n", LIT(e->token.string));
} else {
diff --git a/src/error.cpp b/src/error.cpp
index f5123b969..da444e998 100644
--- a/src/error.cpp
+++ b/src/error.cpp
@@ -266,7 +266,7 @@ gb_internal void terminal_reset_colours(void) {
}
-gb_internal isize show_error_on_line(TokenPos const &pos, TokenPos end, char const *prefix=nullptr) {
+gb_internal isize show_error_on_line(TokenPos const &pos, TokenPos end) {
get_error_value()->end = end;
if (!show_error_line()) {
return -1;
@@ -289,17 +289,13 @@ gb_internal isize show_error_on_line(TokenPos const &pos, TokenPos end, char con
MAX_LINE_LENGTH_PADDED = MAX_LINE_LENGTH-MAX_TAB_WIDTH-ELLIPSIS_PADDING,
};
- if (prefix) {
- error_out("\t%s\n\n", prefix);
- }
+ i32 error_length = gb_max(end.offset - pos.offset, 1);
error_out("\t");
terminal_set_colours(TerminalStyle_Bold, TerminalColour_White);
- i32 error_length = gb_max(end.offset - pos.offset, 1);
-
isize squiggle_extra = 0;
if (line_len > MAX_LINE_LENGTH_PADDED) {