@@ -140,13 +140,19 @@ let for_type_declaration =
140140let for_signature_item =
141141 (~env: Env . t , ~comments, sig_item: Types . signature_item ) => {
142142 switch (sig_item) {
143- | TSigValue (ident , vd ) =>
144- let vd = Env . find_value(vd. val_fullpath, env);
145- let docblock = for_value_description(~comments, ~ident, vd);
143+ | TSigValue (ident , ovd ) =>
144+ // Fetch original location as signatures don't contain real locations
145+ let vd = Env . find_value(ovd. val_fullpath, env);
146+ let val_loc = vd. val_loc;
147+ let docblock =
148+ for_value_description(~comments, ~ident, {... ovd, val_loc});
146149 Some (docblock);
147- | TSigType (ident , td , _rec ) =>
148- let td = Env . find_type(td. type_path, env);
149- let docblock = for_type_declaration(~comments, ~ident, td);
150+ | TSigType (ident , otd , _rec ) =>
151+ // Fetch original location as signatures don't contain real locations
152+ let td = Env . find_type(otd. type_path, env);
153+ let type_loc = td. type_loc;
154+ let docblock =
155+ for_type_declaration(~comments, ~ident, {... otd, type_loc});
150156 Some (docblock);
151157 | _ => None
152158 };
0 commit comments