@@ -69,9 +69,9 @@ struct IrExecutable {
69
69
IrExecutable *source_exec;
70
70
IrAnalyze *analysis;
71
71
Scope *begin_scope;
72
+ ErrorMsg *first_err_trace_msg;
72
73
ZigList<Tld *> tld_list;
73
74
74
- bool invalid;
75
75
bool is_inline;
76
76
bool is_generic_instantiation;
77
77
bool need_err_code_spill;
@@ -1129,11 +1129,10 @@ struct ZigTypeStruct {
1129
1129
ResolveStatus resolve_status;
1130
1130
1131
1131
bool is_slice;
1132
- bool resolve_loop_flag; // set this flag temporarily to detect infinite loops
1133
- bool reported_infinite_err;
1134
1132
// whether any of the fields require comptime
1135
1133
// known after ResolveStatusZeroBitsKnown
1136
1134
bool requires_comptime;
1135
+ bool resolve_loop_flag;
1137
1136
};
1138
1137
1139
1138
struct ZigTypeOptional {
@@ -1155,26 +1154,20 @@ struct ZigTypeErrorSet {
1155
1154
1156
1155
struct ZigTypeEnum {
1157
1156
AstNode *decl_node;
1158
- ContainerLayout layout;
1159
- uint32_t src_field_count;
1160
1157
TypeEnumField *fields;
1161
- bool is_invalid; // true if any fields are invalid
1162
1158
ZigType *tag_int_type;
1163
1159
1164
1160
ScopeDecls *decls_scope;
1165
1161
1166
- // set this flag temporarily to detect infinite loops
1167
- bool embedded_in_current;
1168
- bool reported_infinite_err;
1169
- // whether we've finished resolving it
1170
- bool complete;
1171
-
1172
- bool zero_bits_loop_flag;
1173
- bool zero_bits_known;
1174
-
1175
1162
LLVMValueRef name_function;
1176
1163
1177
1164
HashMap<Buf *, TypeEnumField *, buf_hash, buf_eql_buf> fields_by_name;
1165
+ uint32_t src_field_count;
1166
+
1167
+ ContainerLayout layout;
1168
+ ResolveStatus resolve_status;
1169
+
1170
+ bool resolve_loop_flag;
1178
1171
};
1179
1172
1180
1173
uint32_t type_ptr_hash (const ZigType *ptr);
@@ -1199,11 +1192,10 @@ struct ZigTypeUnion {
1199
1192
ResolveStatus resolve_status;
1200
1193
1201
1194
bool have_explicit_tag_type;
1202
- bool resolve_loop_flag; // set this flag temporarily to detect infinite loops
1203
- bool reported_infinite_err;
1204
1195
// whether any of the fields require comptime
1205
1196
// the value is not valid until zero_bits_known == true
1206
1197
bool requires_comptime;
1198
+ bool resolve_loop_flag;
1207
1199
};
1208
1200
1209
1201
struct FnGenParamInfo {
@@ -1715,6 +1707,7 @@ struct CodeGen {
1715
1707
// ////////////////////////// Runtime State
1716
1708
LLVMModuleRef module;
1717
1709
ZigList<ErrorMsg*> errors;
1710
+ ErrorMsg *trace_err;
1718
1711
LLVMBuilderRef builder;
1719
1712
ZigLLVMDIBuilder *dbuilder;
1720
1713
ZigLLVMDICompileUnit *compile_unit;
@@ -1767,7 +1760,6 @@ struct CodeGen {
1767
1760
ZigList<Tld *> resolve_queue;
1768
1761
size_t resolve_queue_index;
1769
1762
ZigList<TimeEvent> timing_events;
1770
- ZigList<AstNode *> tld_ref_source_node_stack;
1771
1763
ZigList<ZigFn *> inline_fns;
1772
1764
ZigList<ZigFn *> test_fns;
1773
1765
ZigList<ErrorTableEntry *> errors_by_index;
@@ -1852,7 +1844,6 @@ struct CodeGen {
1852
1844
ZigFn *main_fn;
1853
1845
ZigFn *panic_fn;
1854
1846
TldFn *panic_tld_fn;
1855
- AstNode *root_export_decl;
1856
1847
1857
1848
WantPIC want_pic;
1858
1849
WantStackCheck want_stack_check;
0 commit comments