We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
1 parent 008563b commit e16286aCopy full SHA for e16286a
src/java_bytecode/java_bytecode_convert_method.cpp
@@ -263,7 +263,20 @@ void java_bytecode_convert_method_lazy(
263
symbol_tablet &symbol_table)
264
{
265
symbolt method_symbol;
266
- typet member_type=java_type_from_string(m.descriptor);
+ typet member_type;
267
+ if(m.signature.has_value())
268
+ {
269
+#ifdef DEBUG
270
+ std::cout << "method " << m.name
271
+ << " has signature " << m.signature.value() << "\n";
272
+#endif
273
+ member_type=java_type_from_string(
274
+ m.signature.value(),
275
+ id2string(class_symbol.name));
276
+ INVARIANT(member_type.id()==ID_code, "Must be code type");
277
+ }
278
+ else
279
+ member_type=java_type_from_string(m.descriptor);
280
281
method_symbol.name=method_identifier;
282
method_symbol.base_name=m.base_name;
0 commit comments