<div dir="ltr"><br><div>We still have access to types via MDNodes directly and the assertion that assumes all accesses to DITypes are accessing the resolved DIType will fire</div><div><br></div><div>i.e assert(Ty == resolve(Ty.getRef()))</div>
<div><br></div><div>One example is the access to DIType via DIArray in SubroutineType. If all elements in the type array are DITypes we can create a DITypeArray and use that for SubroutineType's type array instead. But we currently have unspecified parameter in the type array and it is not a DIType.</div>
<div><br></div><div>What are your thoughts? Suggestions are welcome.</div><div><br></div><div>Is it a good idea to canonicalize file names (i.e dA/B.h should be equivalent to dA/../dA/B.h)? This will reduce the chance of having two DITypes that should be equivalent with equivalent file names.</div>
<div><br></div><div>Thanks,</div><div>Manman</div></div>