@@ -188,6 +188,8 @@ class File;
188
188
struct CalleeFunction : public Printable <CalleeFunction> {
189
189
// The function. `None` if not a function.
190
190
FunctionId function_id;
191
+ // The overload set, if this is a C++ overload set rather than a function.
192
+ CppOverloadSetId cpp_overload_set_id;
191
193
// The specific that contains the function.
192
194
SpecificId enclosing_specific_id;
193
195
// The specific for the callee itself, in a resolved call.
@@ -199,13 +201,15 @@ struct CalleeFunction : public Printable<CalleeFunction> {
199
201
InstId self_id;
200
202
// True if an error instruction was found.
201
203
bool is_error;
202
- // True if the function is a C++ overload set.
203
- // TODO: Store the CppOverloadSetId instead of a bool.
204
- bool is_cpp_overload_set;
205
204
206
205
auto Print (llvm::raw_ostream& out) const -> void {
207
- out << " {function_id: " << function_id
208
- << " , enclosing_specific_id: " << enclosing_specific_id
206
+ out << " {" ;
207
+ if (cpp_overload_set_id.has_value ()) {
208
+ out << " cpp_overload_set_id: " << cpp_overload_set_id;
209
+ } else {
210
+ out << " function_id: " << function_id;
211
+ }
212
+ out << " , enclosing_specific_id: " << enclosing_specific_id
209
213
<< " , resolved_specific_id: " << resolved_specific_id
210
214
<< " , self_type_id: " << self_type_id << " , self_id: " << self_id
211
215
<< " , is_error: " << is_error << " }" ;
0 commit comments