<html><head><meta http-equiv="Content-Type" content="text/html charset=windows-1252"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><div><div>On Oct 31, 2012, at 10:33 AM, Douglas Gregor <<a href="mailto:dgregor@apple.com">dgregor@apple.com</a>> wrote:</div><blockquote type="cite"><div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><div>On Oct 31, 2012, at 7:58 AM, "Vane, Edwin" <<a href="mailto:edwin.vane@intel.com">edwin.vane@intel.com</a>> wrote:</div><br class="Apple-interchange-newline"><blockquote type="cite"><div lang="EN-US" link="blue" vlink="purple" style="font-family: Helvetica; font-size: medium; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-align: -webkit-auto; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; "><div class="WordSection1" style="page: WordSection1; "><div style="margin: 0in 0in 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif; "><span lang="EN-CA">Hi all,<o:p></o:p></span></div><div style="margin: 0in 0in 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif; "><span lang="EN-CA"> </span></div><div style="margin: 0in 0in 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif; "><span lang="EN-CA">I’ve been catching up from the archive about talk about a C++11 migration tool. It seems all that communication culminated in the loop-convert tool currently in the clang-tools-extra repo. My team has been developing tools for migrating more C++11 features. We’re starting small and simple (e.g. nested template space removal between ‘>’, use of nullptr, etc.) and hope to tackle more and more complex transformations. Right each transformation lives in its own standalone tool, following the loop-convert model. However, based on the old conversation I think the intent was to have loop-convert as the basis of a single binary that does multiple transforms right?</span></div></div></div></blockquote><div><br></div><div>Yes, we'd like to have a single "C++11 migrator" binary that can do multiple transforms. And I *definitely* think it's good to start with the simpler transformations, so we can get the basic architecture in place without having to also work on a ton of logic for individual migration steps.</div><br><blockquote type="cite"><div lang="EN-US" link="blue" vlink="purple" style="font-family: Helvetica; font-size: medium; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-align: -webkit-auto; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; "><div class="WordSection1" style="page: WordSection1; "><div style="margin: 0in 0in 0.0001pt; font-size: 11pt; font-family: Calibri, sans-serif; "><span style="font-size: 11pt; "> </span><span style="font-size: 11pt; ">Assuming ‘yes’ to that question, when we have a few tools to choose from, we want to merge them into a single c++11 migration tool. We’d welcome thoughts on the design of such a tool. I’m aware of earlier suggestions:</span></div><div style="margin: 0in 0in 0.0001pt 0.5in; font-size: 11pt; font-family: Calibri, sans-serif; text-indent: -0.25in; "><span lang="EN-CA"><span>-<span style="font-style: normal; font-variant: normal; font-weight: normal; font-size: 7pt; line-height: normal; font-family: 'Times New Roman'; ">       <span class="Apple-converted-space"> </span></span></span></span><span lang="EN-CA">Something akin to –O# to control the level of risk/change you’re willing to live with.<o:p></o:p></span></div><div style="margin: 0in 0in 0.0001pt 0.5in; font-size: 11pt; font-family: Calibri, sans-serif; text-indent: -0.25in; "><span lang="EN-CA"><span>-<span style="font-style: normal; font-variant: normal; font-weight: normal; font-size: 7pt; line-height: normal; font-family: 'Times New Roman'; ">       <span class="Apple-converted-space"> </span></span></span></span><span lang="EN-CA">Options to turn on/off certain transforms</span></div></div></div></blockquote><div><br></div><div>The two aren't mutually exclusive. Personally, I think the latter is far more important: users need to be able to say, "use this C++11 feature, but not this other one". And it certainly makes sense to define a default set of transforms that are guaranteed to be safe (including the two you mentioned above).</div></div></blockquote><div><br></div>I would be happy to help define and build such a tool.</div><div><br></div><div apple-content-edited="true">
<span class="Apple-style-span" style="border-collapse: separate; border-spacing: 0px; ">-- Marshall<br><br>Marshall Clow     Idio Software   <<a href="mailto:mclow.lists@gmail.com">mailto:mclow.lists@gmail.com</a>><br><br>A.D. 1517: Martin Luther nails his 95 Theses to the church door and is promptly moderated down to (-1, Flamebait).<br>        -- Yu Suzuki</span>

</div>
<br></body></html>