aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorShujing Zhao <pearly.zhao@oracle.com>2010-01-22 02:50:44 +0000
committerShujing Zhao <pzhao@gcc.gnu.org>2010-01-22 02:50:44 +0000
commitd3c375f58f1905f0d69089aac5835dad2bdd7b76 (patch)
tree435ff826fe6581c1617c484000a5412a98330b46
parentc4d188d54a3f469a3699de93ed6b87dafb97b350 (diff)
downloadgcc-d3c375f58f1905f0d69089aac5835dad2bdd7b76.zip
gcc-d3c375f58f1905f0d69089aac5835dad2bdd7b76.tar.gz
gcc-d3c375f58f1905f0d69089aac5835dad2bdd7b76.tar.bz2
exgettext: Handle the functions and the macro definitions that the arguments are broken...
2010-01-22 Shujing Zhao <pearly.zhao@oracle.com> * exgettext: Handle the functions and the macro definitions that the arguments are broken into more than one line. From-SVN: r156168
-rw-r--r--gcc/po/ChangeLog5
-rw-r--r--gcc/po/exgettext12
2 files changed, 17 insertions, 0 deletions
diff --git a/gcc/po/ChangeLog b/gcc/po/ChangeLog
index 3e0cf42..ccab0c2 100644
--- a/gcc/po/ChangeLog
+++ b/gcc/po/ChangeLog
@@ -1,3 +1,8 @@
+2010-01-22 Shujing Zhao <pearly.zhao@oracle.com>
+
+ * exgettext: Handle the functions and the macro definitions that the
+ arguments are broken into more than one line.
+
2010-01-20 Joseph Myers <joseph@codesourcery.com>
* zh_CN.po: Update.
diff --git a/gcc/po/exgettext b/gcc/po/exgettext
index 7ff3799..35f81a7 100644
--- a/gcc/po/exgettext
+++ b/gcc/po/exgettext
@@ -184,6 +184,18 @@ END {
while (getline < file) {
if (/^(#[ ]*define[ ]*)?[A-Za-z_].*\(.*msgid[,\)]/) {
keyword_option($0)
+ } else if (/^(#[ ]*define[ ]*)?[A-Za-z_].*(\(|\(.*,)$/) {
+ name_line = $0
+ while (getline < file) {
+ lineno++
+ if (/msgid[,\)]/){
+ keyword_option(name_line $0)
+ break
+ } else if (/,$/) {
+ name_line = name_line $0
+ continue
+ } else break
+ }
} else if (/%e/ || /%n/) {
spec_error_string($0)
}