Bez komentáře nemáte šanci poznat, že posílání parametru metodě bez parametrů není chyba, ale workaround chyby.
Proč by mělo být posílání parametru metodě chybou? I ze samotného zápisu vidím, že tam ten nullptr prostě potřebuje.
Protože ta metoda je deklarována
int(), tedy vrací int a nemá žádné parametry.
Co třeba ten zápis trochu pozměnit tak, aby tam ten komentář nebyl potřebný?
jvalue androidBug190058[1];
androidBug190058[0].l = nullptr;
env->CallIntMethodA(annotation, methods.value, androidBug190058);
To je paráda, když musíte projít issue tracker Androidu, abyste u kódu zjistil, co vlastně znamená.
Jinak ty názvy typů a objektů vypadají docela šíleně. To se nedivím, že k tomu někdo potřebuje komentáře. Například z názvu CallIntMethodA lze jen těžko rozluštit, zda "Int" je integer nebo internal a zda "A" znamená attribute nebo annotation. Z názvu "env" zase nepoznám, zda je to environment nebo třeba envelope.
Int je návratová hodnota té metody. A znamená, že se tomu předává pole (array) parametrů. Je to standardní konvence JNI, kterou když znáte, tak k tomu právě žádné komentáře moc potřeba nejsou
