<div dir="ltr">Hi, as part of a research project I had to tag certain typedefs with an attribute and then replace those tagged typedefs by some specific code.<div><br></div><div>I added the attribute to include/clang/Basic/Attr.td, recompiled clang, and then programmed a plugin using ASTMatchers, to detect all the typedefs and do the replacement (using Rewriter) if the attribute is present.</div><div><br></div><div><div>Now, if I use the plugin passing -XClang -plugin as compilation arguments, so that the compilation stops after using the plugin, the plugin works correctly and outputs modified source code. But if I use -XClang -add-plugin, so that the compilation carries on, Rewriter fails and I get a core dump.</div><div><br></div><div>Am I doing something wrong in here? Is Rewriter unusable unless it is used as a plugin? If you were to do some transformation similar to this one, would you use a similar strategy or do things differently?</div><div><br></div><div>Any advice would be greatly welcomed. </div><div><br></div><div>Best regards,</div><div><br></div>-- <br><div class="gmail_signature"><div dir="ltr"><div><div dir="ltr"><b style="color:rgb(0,0,0);font-weight:normal"><span style="font-size:16px;font-family:Arial;vertical-align:baseline;white-space:pre-wrap;background-color:transparent">______________________________</span><br><span style="font-size:16px;font-family:Arial;vertical-align:baseline;white-space:pre-wrap;background-color:transparent"></span><br><font face="verdana, sans-serif"><span style="font-size:16px;vertical-align:baseline;white-space:pre-wrap;background-color:transparent"><a href="http://www.tallertechnologies.com" target="_blank"><img src="http://www.tallertechnologies.com/templates/tallertechnologies/images/signature.png" width="200" height="78"></a></span><br><span style="font-size:16px;vertical-align:baseline;white-space:pre-wrap;background-color:transparent"></span><br><span style="vertical-align:baseline;white-space:pre-wrap;background-color:transparent"><font size="4">Pablo Miguel Oliva</font></span><br></font><span style="white-space:pre-wrap"><font face="verdana, sans-serif" size="2">Software Engineer</font></span><br><span style="font-size:15px;font-family:Arial;vertical-align:baseline;white-space:pre-wrap;background-color:transparent"></span><br><span style="font-size:11px;font-family:Arial;vertical-align:baseline;white-space:pre-wrap;background-color:transparent">San Lorenzo 47, 3rd Floor, Office 5</span><br><span style="font-size:11px;font-family:Arial;vertical-align:baseline;white-space:pre-wrap;background-color:transparent">Córdoba, Argentina </span><br><span style="font-size:11px;font-family:Arial;vertical-align:baseline;white-space:pre-wrap;background-color:transparent"></span><br><span style="font-size:11px;font-family:Arial;font-weight:bold;vertical-align:baseline;white-space:pre-wrap;background-color:transparent">Phone:</span><span style="font-size:11px;font-family:Arial;vertical-align:baseline;white-space:pre-wrap;background-color:transparent"> +54 351 4217888 / +54 351 4218211</span><br><span style="font-size:11px;font-family:Arial;font-weight:bold;vertical-align:baseline;white-space:pre-wrap;background-color:transparent">Skype:</span><span style="font-size:11px;font-family:Arial;vertical-align:baseline;white-space:pre-wrap;background-color:transparent"> pabloliva87</span></b><br></div><div dir="ltr"><b style="font-size:12.8px"><span style="color:rgb(0,0,0);vertical-align:baseline;white-space:pre-wrap;background-color:transparent"><font face="verdana, sans-serif"><div style="font-family:'Times New Roman';white-space:normal;font-size:medium;background-color:transparent"><b><span style="font-size:11px;font-family:Arial;vertical-align:baseline;white-space:pre-wrap;background-color:transparent">Linkedin: </span></b><a href="http://ar.linkedin.com/in/pablomigueloliva" target="_blank"><span style="font-family:inherit;font-style:inherit;font-variant:inherit;font-weight:inherit;line-height:inherit;font-size:13px;margin:0px;padding:0px;border:0px;vertical-align:baseline;font-stretch:inherit;color:rgb(102,105,106);background-color:transparent">ar.linkedin.com/in/</span><span style="font-family:inherit;font-style:inherit;font-variant:inherit;font-weight:inherit;line-height:inherit;color:rgb(51,51,51);font-size:13px;margin:0px;padding:0px;border:0px;vertical-align:baseline;font-stretch:inherit;background-color:transparent">pablomigueloliva</span></a></div></font></span></b></div></div></div></div>
</div></div>