+/* -------------------------------------------------------------------------- */
+/* Declaration of helper functions (implemented in functions/_PDCLIB). */
+/* -------------------------------------------------------------------------- */
+
+/* This is the main function called by atoi(), atol() and atoll(). */
+_PDCLIB_intmax_t _PDCLIB_atomax( const char * s );
+
+/* Two helper functions used by strtol(), strtoul() and long long variants. */
+const char * _PDCLIB_strtox_prelim( const char * p, char * sign, int * base );
+_PDCLIB_uintmax_t _PDCLIB_strtox_main( const char ** p, unsigned int base, _PDCLIB_uintmax_t error, _PDCLIB_uintmax_t limval, int limdigit, char * sign );
+
+/* Digits arrays used by various integer conversion functions */
+extern char _PDCLIB_digits[];
+extern char _PDCLIB_Xdigits[];
+
+/* The worker for all printf() type of functions. The pointer spec should point
+ to the introducing '%' of a conversion specifier. The status structure is to
+ be that of the current printf() function, of which the members n, s, stream
+ and arg will be preserved; i will be updated; and all others will be trashed
+ by the function.
+ Returns a pointer to the first character not parsed as conversion specifier.
+*/
+const char * _PDCLIB_print( const char * spec, struct _PDCLIB_status_t * status );
+
+/* The worker for all scanf() type of functions. The pointer spec should point
+ to the introducing '%' of a conversion specifier. The status structure is to
+ be that of the current scanf() function, of which the member stream will be
+ preserved; n, i, and s will be updated; and all others will be trashed by
+ the function.
+ Returns a pointer to the first character not parsed as conversion specifier,
+ or NULL in case of error.
+ FIXME: Should distinguish between matching and input error