aboutsummaryrefslogtreecommitdiff
path: root/src/ir.cpp
diff options
context:
space:
mode:
authorAndrew Kelley <superjoe30@gmail.com>2017-11-07 03:22:27 -0500
committerAndrew Kelley <superjoe30@gmail.com>2017-11-07 03:22:27 -0500
commit4543413491078c53d24115c5229989cda05cb1a5 (patch)
treef4ff1922be22c9ac8d9bf80801abeb67afdfa1af /src/ir.cpp
parent634e8713c394bacfe080d03256d1dd4f9a43dd8c (diff)
downloadzig-4543413491078c53d24115c5229989cda05cb1a5.tar.gz
zig-4543413491078c53d24115c5229989cda05cb1a5.zip
std.io: introduce buffered I/O and change API
I started working on #465 and made some corresponding std.io API changes. New structs: * std.io.FileInStream * std.io.FileOutStream * std.io.BufferedOutStream * std.io.BufferedInStream Removed: * std.io.File.in_stream * std.io.File.out_stream Now instead of &file.out_stream or &file.in_stream to get access to the stream API for a file, you get it like this: var file_in_stream = io.FileInStream.init(&file); const in_stream = &file_in_stream.stream; var file_out_stream = io.FileOutStream.init(&file); const out_stream = &file_out_stream.stream; This is evidence that we might not need any OOP features - See #130.
Diffstat (limited to 'src/ir.cpp')
-rw-r--r--src/ir.cpp1
1 files changed, 1 insertions, 0 deletions
diff --git a/src/ir.cpp b/src/ir.cpp
index ae48c1d369..1d63677024 100644
--- a/src/ir.cpp
+++ b/src/ir.cpp
@@ -12823,6 +12823,7 @@ static TypeTableEntry *ir_analyze_instruction_switch_target(IrAnalyze *ira,
case TypeTableEntryIdEnum:
{
TypeTableEntry *tag_type = target_type->data.enumeration.tag_type;
+ assert(tag_type != nullptr);
if (pointee_val) {
ConstExprValue *out_val = ir_build_const_from(ira, &switch_target_instruction->base);
bigint_init_unsigned(&out_val->data.x_bigint, pointee_val->data.x_enum.tag);