aboutsummaryrefslogtreecommitdiff
path: root/src/checker/checker.cpp
diff options
context:
space:
mode:
authorgingerBill <ginger.bill.22@gmail.com>2016-08-15 21:22:44 +0100
committergingerBill <ginger.bill.22@gmail.com>2016-08-16 10:56:44 +0100
commit0dd17fe84308bba09c6d2ba15f8b8504bbcf5c89 (patch)
tree720ab8306146f4febc14c72ae7601fb90bc487dc /src/checker/checker.cpp
parentdcbb2fcfbdbd3b35ddc44a4c542b7c6375e47214 (diff)
Win32 Window Test
Diffstat (limited to 'src/checker/checker.cpp')
-rw-r--r--src/checker/checker.cpp9
1 files changed, 7 insertions, 2 deletions
diff --git a/src/checker/checker.cpp b/src/checker/checker.cpp
index 4b2ba78fc..a27a54f87 100644
--- a/src/checker/checker.cpp
+++ b/src/checker/checker.cpp
@@ -452,7 +452,8 @@ void add_type_and_value(CheckerInfo *i, AstNode *expression, AddressingMode mode
if (mode == Addressing_Constant) {
GB_ASSERT(value.kind != ExactValue_Invalid);
- GB_ASSERT(type == t_invalid || is_type_constant_type(type));
+ GB_ASSERT_MSG(type != t_invalid || is_type_constant_type(type),
+ "type: %s", type_to_string(type));
}
TypeAndValue tv = {};
@@ -473,7 +474,11 @@ void add_entity(Checker *c, Scope *scope, AstNode *identifier, Entity *entity) {
if (!are_strings_equal(entity->token.string, make_string("_"))) {
Entity *insert_entity = scope_insert_entity(scope, entity);
if (insert_entity) {
- error(&c->error_collector, entity->token, "Redeclared entity in this scope: %.*s", LIT(entity->token.string));
+ error(&c->error_collector, entity->token,
+ "Redeclararation of `%.*s` in this scope\n"
+ "\tat %.*s(%td:%td)",
+ LIT(entity->token.string),
+ LIT(entity->token.pos.file), entity->token.pos.line, entity->token.pos.column);
return;
}
}