@@ -125,4 +125,64 @@ Because in the expression's type:
125125 because
126126 atom() is not compatible with binary()
127127
128- 6 ERRORS
128+ error: incompatible_types (See https://fb.me/eqwalizer_errors#incompatible_types)
129+ ┌─ check/src/error_messages.erl:37:31
130+ │
131+ 37 │ no_good_map_candidate_1(M) -> M.
132+ │ ^
133+ │ │
134+ │ M.
135+ Expression has type: #{foo => #{large_map_key_a => 'large_map_val_a', large_map_key_b => 'large_map_val_b'}}
136+ Context expected type: #{foo => #{large_map_key_c => 'large_map_val_c'} | #{large_map_key_d => 'large_map_val_d'}}
137+ │
138+
139+ Because in the expression's type:
140+ #{ foo =>
141+ Here the type is: #{...}
142+ Context expects type: #{...} | #{...}
143+ No candidate matches in the expected union.
144+ , ... }
145+
146+ ------------------------------ Detailed message ------------------------------
147+
148+ #{foo => #{large_map_key_a => 'large_map_val_a', large_map_key_b => 'large_map_val_b'}} is not compatible with #{foo => #{large_map_key_c => 'large_map_val_c'} | #{large_map_key_d => 'large_map_val_d'}}
149+ because
150+ at key `foo`:
151+ #{foo => #{large_map_key_a => 'large_map_val_a', large_map_key_b => 'large_map_val_b'}} is not compatible with #{foo => #{large_map_key_c => 'large_map_val_c'} | #{large_map_key_d => 'large_map_val_d'}}
152+ because
153+ #{large_map_key_a => 'large_map_val_a', large_map_key_b => 'large_map_val_b'} is not compatible with #{large_map_key_c => 'large_map_val_c'} | #{large_map_key_d => 'large_map_val_d'}
154+ because
155+ #{large_map_key_a => 'large_map_val_a', large_map_key_b => 'large_map_val_b'} is not compatible with #{large_map_key_c => 'large_map_val_c'}
156+ key `large_map_key_a` is declared in the former but not in the latter and the latter map has no default association
157+
158+ error: incompatible_types (See https://fb.me/eqwalizer_errors#incompatible_types)
159+ ┌─ check/src/error_messages.erl:41:31
160+ │
161+ 41 │ no_good_map_candidate_2(M) -> M.
162+ │ ^
163+ │ │
164+ │ M.
165+ Expression has type: #{foo => #{large_map_key_a => 'large_map_val_a', large_map_key_b => 'large_map_val_b'}}
166+ Context expected type: #{foo => #{large_map_key_c => 'large_map_val_c', large_map_key_d => 'large_map_val_d'} | 'any'}
167+ │
168+
169+ Because in the expression's type:
170+ #{ foo =>
171+ Here the type is: #{...}
172+ Context expects type: #{...} | 'any'
173+ No candidate matches in the expected union.
174+ , ... }
175+
176+ ------------------------------ Detailed message ------------------------------
177+
178+ #{foo => #{large_map_key_a => 'large_map_val_a', large_map_key_b => 'large_map_val_b'}} is not compatible with #{foo => #{large_map_key_c => 'large_map_val_c', large_map_key_d => 'large_map_val_d'} | 'any'}
179+ because
180+ at key `foo`:
181+ #{foo => #{large_map_key_a => 'large_map_val_a', large_map_key_b => 'large_map_val_b'}} is not compatible with #{foo => #{large_map_key_c => 'large_map_val_c', large_map_key_d => 'large_map_val_d'} | 'any'}
182+ because
183+ #{large_map_key_a => 'large_map_val_a', large_map_key_b => 'large_map_val_b'} is not compatible with #{large_map_key_c => 'large_map_val_c', large_map_key_d => 'large_map_val_d'} | 'any'
184+ because
185+ #{large_map_key_a => 'large_map_val_a', large_map_key_b => 'large_map_val_b'} is not compatible with #{large_map_key_c => 'large_map_val_c', large_map_key_d => 'large_map_val_d'}
186+ key `large_map_key_a` is declared in the former but not in the latter and the latter map has no default association
187+
188+ 8 ERRORS
0 commit comments