aboutsummaryrefslogtreecommitdiff
path: root/libcpp/macro.c
diff options
context:
space:
mode:
authorJim Meyering <meyering@gcc.gnu.org>2011-04-20 18:19:03 +0000
committerJim Meyering <meyering@gcc.gnu.org>2011-04-20 18:19:03 +0000
commit046957830e176ad16fdef39bc7f1cd44d8fbc3b7 (patch)
treee56a024bf4863c42aaa3f941f466a849bb9d3b82 /libcpp/macro.c
parent53eebfbf949c9cfe6a060a91a09242cb7204f6d8 (diff)
downloadgcc-046957830e176ad16fdef39bc7f1cd44d8fbc3b7.zip
gcc-046957830e176ad16fdef39bc7f1cd44d8fbc3b7.tar.gz
gcc-046957830e176ad16fdef39bc7f1cd44d8fbc3b7.tar.bz2
remove useless if-before-free tests
Change "if (E) free (E);" to "free (E);" everywhere except in the libgo/, intl/, zlib/ and classpath/ directories. Also transform equivalent variants like "if (E != NULL) free (E);" and allow an extra cast on the argument to free. Otherwise, the tested and freed "E" expressions must be identical, modulo white space. From-SVN: r172785
Diffstat (limited to 'libcpp/macro.c')
-rw-r--r--libcpp/macro.c3
1 files changed, 1 insertions, 2 deletions
diff --git a/libcpp/macro.c b/libcpp/macro.c
index d9324a3..eba2349 100644
--- a/libcpp/macro.c
+++ b/libcpp/macro.c
@@ -1064,8 +1064,7 @@ replace_args (cpp_reader *pfile, cpp_hashnode *node, cpp_macro *macro, macro_arg
/* Free the expanded arguments. */
for (i = 0; i < macro->paramc; i++)
- if (args[i].expanded)
- free (args[i].expanded);
+ free (args[i].expanded);
push_ptoken_context (pfile, node, buff, first, dest - first);
}