about summary refs log tree commit diff
diff options
context:
space:
mode:
authorH.J. Lu <hjl.tools@gmail.com>2017-10-01 17:30:49 -0700
committerH.J. Lu <hjl.tools@gmail.com>2017-10-01 17:31:05 -0700
commit2c0cd8f81fee4d9dc8e34254f4f6ed56d5bb6f59 (patch)
treed48a89b0aaf7a605f4a21abb24d5b8bd4b434460
parent8369d216dcc0e192e0e1243d9dad443e68f13f06 (diff)
downloadglibc-2c0cd8f81fee4d9dc8e34254f4f6ed56d5bb6f59.tar.gz
glibc-2c0cd8f81fee4d9dc8e34254f4f6ed56d5bb6f59.tar.xz
glibc-2c0cd8f81fee4d9dc8e34254f4f6ed56d5bb6f59.zip
Hide internal __gettextparse function [BZ #18822]
Hide internal __gettextparse function to allow direct access within
libc.so and libc.a without using GOT nor PLT.

	[BZ #18822]
	* include/plural-exp.h: New file.
	* intl/plural-exp.c: Include <plural-exp.h> instead of
	"plural-exp.h".
-rw-r--r--ChangeLog7
-rw-r--r--include/plural-exp.h8
-rw-r--r--intl/plural-exp.c2
3 files changed, 16 insertions, 1 deletions
diff --git a/ChangeLog b/ChangeLog
index e5edb868f3..dd228bc2f2 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,6 +1,13 @@
 2017-10-01  H.J. Lu  <hongjiu.lu@intel.com>
 
 	[BZ #18822]
+	* include/plural-exp.h: New file.
+	* intl/plural-exp.c: Include <plural-exp.h> instead of
+	"plural-exp.h".
+
+2017-10-01  H.J. Lu  <hongjiu.lu@intel.com>
+
+	[BZ #18822]
 	* sysdeps/unix/sysv/linux/getsourcefilter.c: Include
 	"getsourcefilter.h".
 	* sysdeps/unix/sysv/linux/getsourcefilter.h: New file.
diff --git a/include/plural-exp.h b/include/plural-exp.h
new file mode 100644
index 0000000000..3b026f804d
--- /dev/null
+++ b/include/plural-exp.h
@@ -0,0 +1,8 @@
+#ifndef _PLURAL_EXP_H
+#include <intl/plural-exp.h>
+
+#ifndef _ISOMAC
+extern __typeof (__gettextparse) __gettextparse attribute_hidden;
+#endif /* !_ISOMAC */
+
+#endif
diff --git a/intl/plural-exp.c b/intl/plural-exp.c
index 8c15032631..f5249d5373 100644
--- a/intl/plural-exp.c
+++ b/intl/plural-exp.c
@@ -23,7 +23,7 @@
 #include <stdlib.h>
 #include <string.h>
 
-#include "plural-exp.h"
+#include <plural-exp.h>
 
 #if (defined __GNUC__ && !(defined __APPLE_CC_ && __APPLE_CC__ > 1) && \
      !defined __cplusplus)					       \