Make sure simplify_type simplifies all pointer types
Make sure simplify_type simplifies all pointer types

This is needed to prevent infinite recursion when computing
the shape of an enum type that contains pointers to itself.

Closes #1821

0x73/rust,pshc/rust,bombless/rust,rohitjoshi/rust,richo/rust,reem/rust,mihneadb/rust,ebfull/rust,j16r/rust,emk/rust,rprichard/rust,untitaker/rust,nham/rust,mitsuhiko/rust,mdinger/rust,jbclements/rust,aepsil0n/rust,pshc/rust,emk/rust,P1start/rust,bluss/rand,kwantam/rust,defuz/rust,krzysz00/rust,zubron/rust,vhbit/rust,nwin/rust,ejjeong/rust,vhbit/rust,quornian/rust,fabricedesre/rust,untitaker/rust,omasanori/rust,LeoTestard/rust,pelmers/rust,hauleth/rust,barosl/rust,carols10cents/rust,XMPPwocky/rust,bombless/rust,omasanori/rust,robertg/rust,quornian/rust,erickt/rust,aturon/rust,fabricedesre/rust,AerialX/rust-rt-minimal,sae-bom/rust,kwantam/rust,kimroen/rust,ebfull/rust,LeoTestard/rust,aepsil0n/rust,jashank/rust,nham/rust,ruud-v-a/rust,jbclements/rust,ktossell/rust,nwin/rust,mitsuhiko/rust,cllns/rust,zachwick/rust,GBGamer/rust,philyoon/rust,ruud-v-a/rust,philyoon/rust,jashank/rust,andars/rust,AerialX/rust,victorvde/rust,miniupnp/rust,stepancheg/rust-ide-rust,carols10cents/rust,AerialX/rust,Ryman/rust,GrahamDennis/rand,aepsil0n/rust,mitsuhiko/rust,kimroen/rust,0x73/rust,SiegeLord/rust,jroesch/rust,bombless/rust,michaelballantyne/rust-gpu,andars/rust,barosl/rust,aidancully/rust,michaelballantyne/rust-gpu,XMPPwocky/rust,graydon/rust,jbclements/rust,jashank/rust,aepsil0n/rust,andars/rust,mitsuhiko/rust,P1start/rust,kimroen/rust,pelmers/rust,0x73/rust,kwantam/rust,fabricedesre/rust,LeoTestard/rust,dwillmer/rust,vhbit/rust,carols10cents/rust,mahkoh/rust,sae-bom/rust,gifnksm/rust,barosl/rust,zaeleus/rust,GBGamer/rust,Ryman/rust,ktossell/rust,l0kod/rust,barosl/rust,LeoTestard/rust,ktossell/rust,reem/rust,mahkoh/rust,ejjeong/rust,dwillmer/rust,dwillmer/rust,mvdnes/rust,AerialX/rust-rt-minimal,zachwick/rust,kwantam/rust,gifnksm/rust,rohitjoshi/rust,KokaKiwi/rust,0x73/rust,pshc/rust,nham/rust,dwillmer/rust,TheNeikos/rust,gifnksm/rust,erickt/rust,LeoTestard/rust,nwin/rust,richo/rust,achanda/rand,mihneadb/rust,stepancheg/rust-ide-rust,dinfuehr/rust,servo/rust,sarojaba/rust-doc-korean,michaelballantyne/rust-gpu,AerialX/rust,P1start/rust,reem/rust,kwantam/rust,philyoon/rust,mitsuhiko/rust,pshc/rust,TheNeikos/rust,hauleth/rust,avdi/rust,pczarn/rust,mahkoh/rust,GBGamer/rust,aepsil0n/rust,aturon/rust,pczarn/rust,Ryman/rust,mvdnes/rust,rprichard/rust,jbclements/rust,defuz/rust,nham/rust,jroesch/rust,ruud-v-a/rust,miniupnp/rust,mdinger/rust,jroesch/rust,vhbit/rust,zaeleus/rust,KokaKiwi/rust,omasanori/rust,retep998/rand,seanrivera/rust,mahkoh/rust,P1start/rust,robertg/rust,kmcallister/rust,aneeshusa/rust,miniupnp/rust,quornian/rust,zachwick/rust,reem/rust,nwin/rust,SiegeLord/rust,GBGamer/rust,XMPPwocky/rust,pczarn/rust,defuz/rust,zubron/rust,stepancheg/rust-ide-rust,aneeshusa/rust,pczarn/rust,mihneadb/rust,nwin/rust,nwin/rust,miniupnp/rust,XMPPwocky/rust,zubron/rust,j16r/rust,hauleth/rust,pelmers/rust,stepancheg/rust-ide-rust,jashank/rust,aneeshusa/rust,XMPPwocky/rust,sarojaba/rust-doc-korean,aturon/rust,victorvde/rust,carols10cents/rust,carols10cents/rust,jroesch/rust,Ryman/rust,fabricedesre/rust,nham/rust,mitsuhiko/rust,jbclements/rust,sarojaba/rust-doc-korean,philyoon/rust,aidancully/rust,kmcallister/rust,omasanori/rust,ktossell/rust,dwillmer/rust,hauleth/rust,pythonesque/rust,quornian/rust,zaeleus/rust,zaeleus/rust,richo/rust,sarojaba/rust-doc-korean,dinfuehr/rust,untitaker/rust,pelmers/rust,GBGamer/rust,michaelballantyne/rust-gpu,AerialX/rust-rt-minimal,aturon/rust,Ryman/rust,kimroen/rust,0x73/rust,vhbit/rust,miniupnp/rust,jroesch/rust,pshc/rust,SiegeLord/rust,sarojaba/rust-doc-korean,ktossell/rust,XMPPwocky/rust,reem/rust,cllns/rust,defuz/rust,emk/rust,sae-bom/rust,cllns/rust,LeoTestard/rust,quornian/rust,hauleth/rust,l0kod/rust,dinfuehr/rust,cllns/rust,jbclements/rust,richo/rust,pczarn/rust,erickt/rust,ktossell/rust,zachwick/rust,l0kod/rust,ejjeong/rust,barosl/rust,sae-bom/rust,jashank/rust,KokaKiwi/rust,zubron/rust,kmcallister/rust,l0kod/rust,KokaKiwi/rust,jbclements/rust,zachwick/rust,sarojaba/rust-doc-korean,rprichard/rust,P1start/rust,seanrivera/rust,philyoon/rust,SiegeLord/rust,pythonesque/rust,victorvde/rust,stepancheg/rust-ide-rust,j16r/rust,pythonesque/rust,cllns/rust,Ryman/rust,pczarn/rust,l0kod/rust,graydon/rust,sae-bom/rust,carols10cents/rust,mdinger/rust,pythonesque/rust,j16r/rust,gifnksm/rust,Ryman/rust,pelmers/rust,pythonesque/rust,krzysz00/rust,arthurprs/rand,aturon/rust,rohitjoshi/rust,defuz/rust,fabricedesre/rust,richo/rust,nwin/rust,ktossell/rust,mvdnes/rust,dinfuehr/rust,j16r/rust,aepsil0n/rust,jbclements/rust,j16r/rust,bombless/rust,ebfull/rand,SiegeLord/rust,miniupnp/rust,seanrivera/rust,graydon/rust,bhickey/rand,krzysz00/rust,aneeshusa/rust,andars/rust,michaelballantyne/rust-gpu,TheNeikos/rust,rohitjoshi/rust,j16r/rust,hauleth/rust,emk/rust,jashank/rust,avdi/rust,rprichard/rust,untitaker/rust,l0kod/rust,sarojaba/rust-doc-korean,TheNeikos/rust,zaeleus/rust,andars/rust,zaeleus/rust,nham/rust,erickt/rust,gifnksm/rust,graydon/rust,gifnksm/rust,ruud-v-a/rust,ebfull/rust,omasanori/rust,kmcallister/rust,victorvde/rust,mihneadb/rust,zubron/rust,seanrivera/rust,ebfull/rust,untitaker/rust,mahkoh/rust,kwantam/rust,zubron/rust,rohitjoshi/rust,kimroen/rust,jroesch/rust,aneeshusa/rust,huonw/rand,pelmers/rust,robertg/rust,dwillmer/rust,0x73/rust,erickt/rust,krzysz00/rust,bombless/rust-docs-chinese,aidancully/rust,servo/rust,TheNeikos/rust,avdi/rust,rprichard/rust,avdi/rust,mihneadb/rust,dinfuehr/rust,GBGamer/rust,reem/rust,SiegeLord/rust,mihneadb/rust,ebfull/rust,SiegeLord/rust,P1start/rust,robertg/rust,aidancully/rust,aidancully/rust,seanrivera/rust,l0kod/rust,krzysz00/rust,kimroen/rust,fabricedesre/rust,LeoTestard/rust,pythonesque/rust,robertg/rust,victorvde/rust,quornian/rust,robertg/rust,rohitjoshi/rust,servo/rust,kmcallister/rust,jashank/rust,vhbit/rust,untitaker/rust,sae-bom/rust,AerialX/rust-rt-minimal,mdinger/rust,shepmaster/rand,dwillmer/rust,kmcallister/rust,kmcallister/rust,mvdnes/rust,servo/rust,nham/rust,ebfull/rust,jashank/rust,zubron/rust,ejjeong/rust,graydon/rust,mvdnes/rust,jroesch/rust,emk/rust,mdinger/rust,aneeshusa/rust,l0kod/rust,AerialX/rust,andars/rust,mdinger/rust,vhbit/rust,aturon/rust,ruud-v-a/rust,avdi/rust,dwillmer/rust,ejjeong/rust,emk/rust,krzysz00/rust,bombless/rust,aturon/rust,fabricedesre/rust,kimroen/rust,emk/rust,mahkoh/rust,stepancheg/rust-ide-rust,richo/rust,pshc/rust,omasanori/rust,philyoon/rust,zachwick/rust,GBGamer/rust,AerialX/rust-rt-minimal,jbclements/rust,ruud-v-a/rust,AerialX/rust,barosl/rust,ejjeong/rust,GBGamer/rust,P1start/rust,defuz/rust,avdi/rust,erickt/rust,servo/rust,quornian/rust,TheNeikos/rust,KokaKiwi/rust,michaelballantyne/rust-gpu,nwin/rust,pshc/rust,AerialX/rust-rt-minimal,servo/rust,AerialX/rust,pczarn/rust,0x73/rust,jroesch/rust,stepancheg/rust-ide-rust,miniupnp/rust,seanrivera/rust,bombless/rust,zubron/rust,KokaKiwi/rust,erickt/rust,servo/rust,vhbit/rust,graydon/rust,aidancully/rust,cllns/rust,victorvde/rust,michaelballantyne/rust-gpu,mitsuhiko/rust,waynenilsen/rand,barosl/rust,dinfuehr/rust,miniupnp/rust,pythonesque/rust,mvdnes/rust,rprichard/rust,pshc/rust