diff options
| author | Andrew Kelley <andrew@ziglang.org> | 2019-05-09 14:52:06 -0400 |
|---|---|---|
| committer | Andrew Kelley <andrew@ziglang.org> | 2019-05-09 14:52:06 -0400 |
| commit | 010963ce431db2648374368dfc886aa8482494a9 (patch) | |
| tree | 5779df01f7f570e9adf8c9e56b7d9217e25a1bf3 /src/analyze.cpp | |
| parent | c459edac18a53854dbfdebe50a370d169e715145 (diff) | |
| download | zig-010963ce431db2648374368dfc886aa8482494a9.tar.gz zig-010963ce431db2648374368dfc886aa8482494a9.zip | |
stage1: make some asserts print source location
Diffstat (limited to 'src/analyze.cpp')
| -rw-r--r-- | src/analyze.cpp | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/src/analyze.cpp b/src/analyze.cpp index aa510003b8..c441676e77 100644 --- a/src/analyze.cpp +++ b/src/analyze.cpp @@ -7230,3 +7230,16 @@ ZigLLVMDIType *get_llvm_di_type(CodeGen *g, ZigType *type) { assertNoError(type_resolve(g, type, ResolveStatusLLVMFull)); return type->llvm_di_type; } + +void src_assert(bool ok, AstNode *source_node) { + if (ok) return; + if (source_node == nullptr) { + fprintf(stderr, "when analyzing (unknown source location): "); + } else { + fprintf(stderr, "when analyzing %s:%u:%u: ", + buf_ptr(source_node->owner->data.structure.root_struct->path), + (unsigned)source_node->line + 1, (unsigned)source_node->column + 1); + } + const char *msg = "assertion failed"; + stage2_panic(msg, strlen(msg)); +} |
