auto merge of #18160 : koshlo/rust/to-source-fix, r=alexcrichton
auto merge of #18160 : koshlo/rust/to-source-fix, r=alexcrichton

Fix for issue #18091 

The problem seems to be that `ast_util::int_ty_to_string` takes unsigned number, and no one adds `-` to result string. I've fixed it by putting `-` before result string using `format!`.

I've also added `test_signed_int_to_string()` to check if implementation is valid.


l0kod/rust,l0kod/rust,quornian/rust,zubron/rust,philyoon/rust,miniupnp/rust,ktossell/rust,mihneadb/rust,dwillmer/rust,robertg/rust,mdinger/rust,pshc/rust,0x73/rust,vhbit/rust,mdinger/rust,ktossell/rust,kwantam/rust,richo/rust,cllns/rust,graydon/rust,gifnksm/rust,seanrivera/rust,zaeleus/rust,mahkoh/rust,mvdnes/rust,untitaker/rust,XMPPwocky/rust,robertg/rust,0x73/rust,omasanori/rust,krzysz00/rust,ejjeong/rust,rprichard/rust,sae-bom/rust,omasanori/rust,zaeleus/rust,ktossell/rust,nwin/rust,nwin/rust,miniupnp/rust,miniupnp/rust,carols10cents/rust,mdinger/rust,vhbit/rust,TheNeikos/rust,zubron/rust,defuz/rust,KokaKiwi/rust,reem/rust,zachwick/rust,omasanori/rust,avdi/rust,AerialX/rust,quornian/rust,XMPPwocky/rust,zachwick/rust,kimroen/rust,miniupnp/rust,barosl/rust,nwin/rust,rohitjoshi/rust,emk/rust,untitaker/rust,dwillmer/rust,aneeshusa/rust,quornian/rust,rprichard/rust,zachwick/rust,robertg/rust,mdinger/rust,ruud-v-a/rust,zubron/rust,aneeshusa/rust,pelmers/rust,aepsil0n/rust,zubron/rust,nwin/rust,untitaker/rust,AerialX/rust-rt-minimal,dwillmer/rust,ejjeong/rust,aneeshusa/rust,ruud-v-a/rust,krzysz00/rust,aidancully/rust,jashank/rust,emk/rust,sae-bom/rust,hauleth/rust,bombless/rust,jashank/rust,graydon/rust,nwin/rust,carols10cents/rust,emk/rust,emk/rust,zachwick/rust,defuz/rust,vhbit/rust,aidancully/rust,mvdnes/rust,defuz/rust,krzysz00/rust,AerialX/rust,AerialX/rust-rt-minimal,mvdnes/rust,aepsil0n/rust,0x73/rust,dwillmer/rust,AerialX/rust-rt-minimal,KokaKiwi/rust,ebfull/rust,0x73/rust,AerialX/rust,pshc/rust,philyoon/rust,jashank/rust,gifnksm/rust,cllns/rust,zachwick/rust,GBGamer/rust,quornian/rust,mihneadb/rust,sae-bom/rust,mihneadb/rust,TheNeikos/rust,rprichard/rust,mahkoh/rust,victorvde/rust,miniupnp/rust,graydon/rust,kimroen/rust,avdi/rust,jroesch/rust,zachwick/rust,aidancully/rust,cllns/rust,mahkoh/rust,dinfuehr/rust,TheNeikos/rust,pelmers/rust,rohitjoshi/rust,pelmers/rust,reem/rust,graydon/rust,mihneadb/rust,aneeshusa/rust,victorvde/rust,rprichard/rust,rohitjoshi/rust,quornian/rust,jashank/rust,ebfull/rust,jroesch/rust,aneeshusa/rust,vhbit/rust,ebfull/rust,ebfull/rust,TheNeikos/rust,hauleth/rust,bombless/rust,0x73/rust,richo/rust,carols10cents/rust,mahkoh/rust,nwin/rust,hauleth/rust,pshc/rust,carols10cents/rust,jashank/rust,miniupnp/rust,kwantam/rust,mihneadb/rust,bombless/rust,pshc/rust,richo/rust,gifnksm/rust,AerialX/rust-rt-minimal,richo/rust,victorvde/rust,KokaKiwi/rust,GBGamer/rust,XMPPwocky/rust,aneeshusa/rust,jroesch/rust,zaeleus/rust,sae-bom/rust,zubron/rust,dinfuehr/rust,avdi/rust,seanrivera/rust,l0kod/rust,andars/rust,hauleth/rust,zaeleus/rust,aidancully/rust,omasanori/rust,GBGamer/rust,victorvde/rust,kwantam/rust,AerialX/rust,ejjeong/rust,bombless/rust-docs-chinese,quornian/rust,mvdnes/rust,aepsil0n/rust,reem/rust,kimroen/rust,jashank/rust,ejjeong/rust,KokaKiwi/rust,avdi/rust,dinfuehr/rust,emk/rust,kimroen/rust,cllns/rust,dinfuehr/rust,nwin/rust,barosl/rust,dwillmer/rust,jashank/rust,jashank/rust,ktossell/rust,reem/rust,0x73/rust,untitaker/rust,XMPPwocky/rust,emk/rust,barosl/rust,XMPPwocky/rust,pshc/rust,omasanori/rust,reem/rust,vhbit/rust,richo/rust,andars/rust,ktossell/rust,zubron/rust,graydon/rust,gifnksm/rust,carols10cents/rust,gifnksm/rust,defuz/rust,philyoon/rust,bombless/rust,miniupnp/rust,l0kod/rust,krzysz00/rust,zubron/rust,pelmers/rust,ebfull/rust,mvdnes/rust,graydon/rust,seanrivera/rust,vhbit/rust,kwantam/rust,cllns/rust,ejjeong/rust,kimroen/rust,dwillmer/rust,ebfull/rust,philyoon/rust,AerialX/rust,ruud-v-a/rust,mvdnes/rust,gifnksm/rust,richo/rust,avdi/rust,mdinger/rust,TheNeikos/rust,seanrivera/rust,cllns/rust,0x73/rust,GBGamer/rust,omasanori/rust,rohitjoshi/rust,robertg/rust,aepsil0n/rust,zaeleus/rust,dinfuehr/rust,seanrivera/rust,AerialX/rust,jroesch/rust,dinfuehr/rust,AerialX/rust-rt-minimal,l0kod/rust,mahkoh/rust,krzysz00/rust,rohitjoshi/rust,hauleth/rust,pelmers/rust,robertg/rust,l0kod/rust,KokaKiwi/rust,carols10cents/rust,emk/rust,jroesch/rust,kwantam/rust,KokaKiwi/rust,aidancully/rust,pelmers/rust,andars/rust,GBGamer/rust,l0kod/rust,mdinger/rust,ruud-v-a/rust,avdi/rust,aidancully/rust,victorvde/rust,philyoon/rust,sae-bom/rust,GBGamer/rust,jroesch/rust,rprichard/rust,robertg/rust,jroesch/rust,vhbit/rust,zubron/rust,barosl/rust,XMPPwocky/rust,bombless/rust,ktossell/rust,kwantam/rust,andars/rust,mihneadb/rust,GBGamer/rust,vhbit/rust,GBGamer/rust,ruud-v-a/rust,defuz/rust,andars/rust,jroesch/rust,untitaker/rust,pshc/rust,kimroen/rust,reem/rust,defuz/rust,hauleth/rust,ejjeong/rust,quornian/rust,andars/rust,rohitjoshi/rust,AerialX/rust-rt-minimal,mahkoh/rust,seanrivera/rust,rprichard/rust,krzysz00/rust,victorvde/rust,pshc/rust,ruud-v-a/rust,pshc/rust,kimroen/rust,barosl/rust,ktossell/rust,dwillmer/rust,dwillmer/rust,TheNeikos/rust,barosl/rust,aepsil0n/rust,sae-bom/rust,barosl/rust,aepsil0n/rust,nwin/rust,miniupnp/rust,untitaker/rust,l0kod/rust,bombless/rust,philyoon/rust,zaeleus/rust