-extern Lisp_Object Fget_char_property (), Fget_text_property ();
-extern Lisp_Object Ftext_properties_at ();
-extern Lisp_Object Fnext_property_change (), Fprevious_property_change ();
-extern Lisp_Object Fadd_text_properties (), Fset_text_properties ();
-extern Lisp_Object Fremove_text_properties (), Ferase_text_properties ();
-extern Lisp_Object Ftext_property_any (), Ftext_property_not_all ();
-extern Lisp_Object copy_text_properties ();
+EXFUN (Fget_char_property, 3);
+EXFUN (Fget_text_property, 3);
+EXFUN (Ftext_properties_at, 2);
+EXFUN (Fnext_property_change, 3);
+EXFUN (Fprevious_property_change, 3);
+EXFUN (Fadd_text_properties, 4);
+EXFUN (Fset_text_properties, 4);
+EXFUN (Fremove_text_properties, 4);
+EXFUN (Ftext_property_any, 5);
+EXFUN (Ftext_property_not_all, 5);
+EXFUN (Fprevious_single_char_property_change, 4);
+extern Lisp_Object copy_text_properties P_ ((Lisp_Object, Lisp_Object,
+ Lisp_Object, Lisp_Object,
+ Lisp_Object, Lisp_Object));
+extern Lisp_Object set_text_properties P_ ((Lisp_Object, Lisp_Object,
+ Lisp_Object, Lisp_Object,
+ Lisp_Object));
+extern void set_text_properties_1 P_ ((Lisp_Object, Lisp_Object,
+ Lisp_Object, Lisp_Object, INTERVAL));
+
+Lisp_Object text_property_list P_ ((Lisp_Object, Lisp_Object, Lisp_Object,
+ Lisp_Object));
+int add_text_properties_from_list P_ ((Lisp_Object, Lisp_Object, Lisp_Object));
+void extend_property_ranges P_ ((Lisp_Object, Lisp_Object, Lisp_Object));
+Lisp_Object get_char_property_and_overlay P_ ((Lisp_Object, Lisp_Object,
+ Lisp_Object, Lisp_Object*));
+extern int text_property_stickiness (Lisp_Object prop, Lisp_Object pos);