<div dir="ltr">I don't know of any such tool that does this sort of thing already, though it is theoretically possible (refer to the Clang Tooling infrastructure, and possibly the AST Matchers). Getting the right balance of readability improvements in such a tool wouldn't necessarily be trivial though (just making larger expressions isn't always the best idea, of course - named variables can often improve readability)</div>
<div class="gmail_extra"><br><br><div class="gmail_quote">On Fri, Jan 24, 2014 at 1:25 AM, James Courtier-Dutton <span dir="ltr"><<a href="mailto:james.dutton@gmail.com" target="_blank">james.dutton@gmail.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Hi,<br>
<br>
Example input source code:<br>
int main() {<br>
  int a,b,c;<br>
  a = 1;<br>
  b = a + 3;<br>
  c = b * 4;<br>
  printf("Result = %d\n", c);<br>
}<br>
<br>
Desired output source code:<br>
int main() {<br>
  int a;<br>
  a = (1 + 3) * 4;<br>
  printf("Result = %d\n", a);<br>
}<br>
<br>
I.e. Is there a way to automatically take multi-line basic<br>
calculations and turn them into a single line of more complex<br>
calculations.<br>
I know these sorts of optimizations are done during compiling, but I<br>
would like the actual source code to be simplified and made easier to<br>
read.<br>
<br>
Example use. The "input source code" is some auto-generated code. I<br>
wish to process that code to make it easier to read, by producing the<br>
desired "output source code".<br>
<br>
Kind Regards<br>
<br>
James<br>
_______________________________________________<br>
cfe-dev mailing list<br>
<a href="mailto:cfe-dev@cs.uiuc.edu">cfe-dev@cs.uiuc.edu</a><br>
<a href="http://lists.cs.uiuc.edu/mailman/listinfo/cfe-dev" target="_blank">http://lists.cs.uiuc.edu/mailman/listinfo/cfe-dev</a><br>
</blockquote></div><br></div>