Version 1 (modified by mikehh, 5 years ago)

report as at r43470 (to be modified as necessary)

Boilerplate Only in C Function Documentation

The following is extracted from the test t/codingstd/c_function_docs.t.

The following gives the C source file in single quotes, followed by the output for the test - prefixed by #

It gives the number of functions lacking documentation in the source file, then the function(s) that lack documentation (boilerplate only) and the header (=item C<...>).

Bear in mind we are dealing with POD and that it expects a maximum line length of 78.

as of r43470 the following C functions are lacking documentation:

'examples/c/nanoparrot.c'

# 2 function(s) lacking documentation:
# examples/c/nanoparrot.c (boilerplate only)
# In:
# =item C<static void run(Interp *interp, opcode_t *pc)>
#
# examples/c/nanoparrot.c (boilerplate only)
# In:
# =item C<int main(int argc, char *argv[])>

'examples/compilers/japhc.c'

# 1 function(s) lacking documentation:
# examples/compilers/japhc.c (boilerplate only)
# In:
# =item C<static int unescape(char *string)>

'compilers/imcc/instructions.c'

# 2 function(s) lacking documentation:
# compilers/imcc/instructions.c (boilerplate only)
# In:
# =item C<static int e_file_close(PARROT_INTERP, void *param)>
#
# compilers/imcc/instructions.c (boilerplate only)
# In:
# =item C<static int e_file_emit(PARROT_INTERP, void *param, const IMC_Unit *unit,
# const Instruction *ins)>

'compilers/imcc/optimizer.c'

# 4 function(s) lacking documentation:
# compilers/imcc/optimizer.c (boilerplate only)
# In:
# =item C<int optimize(PARROT_INTERP, IMC_Unit *unit)>
#
# compilers/imcc/optimizer.c (boilerplate only)
# In:
# =item C<static int branch_cond_loop_swap(PARROT_INTERP, IMC_Unit *unit,
# Instruction *branch, Instruction *start, Instruction *cond)>
#
# compilers/imcc/optimizer.c (boilerplate only)
# In:
# =item C<static int dead_code_remove(PARROT_INTERP, IMC_Unit *unit)>
#
# compilers/imcc/optimizer.c (boilerplate only)
# In:
# =item C<static int used_once(PARROT_INTERP, IMC_Unit *unit)>

'compilers/imcc/parser_util.c'

# 11 function(s) lacking documentation:
# compilers/imcc/parser_util.c (boilerplate only)
# In:
# =item C<static Instruction * var_arg_ins(PARROT_INTERP, IMC_Unit *unit, const
# char *name, SymReg **r, int n, int emit)>
#
# compilers/imcc/parser_util.c (boilerplate only)
# In:
# =item C<int do_yylex_init(PARROT_INTERP, yyscan_t* yyscanner)>
#
# compilers/imcc/parser_util.c (boilerplate only)
# In:
# =item C<PMC * IMCC_compile_pir_s(PARROT_INTERP, const char *s, STRING
# **error_message)>
#
# compilers/imcc/parser_util.c (boilerplate only)
# In:
# =item C<PMC * IMCC_compile_pasm_s(PARROT_INTERP, const char *s, STRING
# **error_message)>
#
# compilers/imcc/parser_util.c (boilerplate only)
# In:
# =item C<PMC * imcc_compile_pasm_ex(PARROT_INTERP, const char *s)>
#
# compilers/imcc/parser_util.c (boilerplate only)
# In:
# =item C<PMC * imcc_compile_pir_ex(PARROT_INTERP, const char *s)>
#
# compilers/imcc/parser_util.c (boilerplate only)
# In:
# =item C<void * IMCC_compile_file_s(PARROT_INTERP, const char *s, STRING
# **error_message)>
#
# compilers/imcc/parser_util.c (boilerplate only)
# In:
# =item C<static int change_op(PARROT_INTERP, IMC_Unit *unit, SymReg **r, int num,
# int emit)>
#
# compilers/imcc/parser_util.c (boilerplate only)
# In:
# =item C<static const char * try_rev_cmp(const char *name, SymReg **r)>
#
# compilers/imcc/parser_util.c (boilerplate only)
# In:
# =item C<void imcc_init(PARROT_INTERP)>
#
# compilers/imcc/parser_util.c (boilerplate only)
# In:
# =item C<void imcc_destroy(PARROT_INTERP)>

'compilers/imcc/pbc.c'

# 2 function(s) lacking documentation:
# compilers/imcc/pbc.c (boilerplate only)
# In:
# =item C<static subs_t * find_sub_by_subid(PARROT_INTERP, const char *lookup,
# const subs_t *sym, int *pc)>
#
# compilers/imcc/pbc.c (boilerplate only)
# In:
# =item C<STRING * IMCC_string_from__STRINGC(PARROT_INTERP, char *buf)>

'compilers/imcc/pcc.c'

# 3 function(s) lacking documentation:
# compilers/imcc/pcc.c (boilerplate only)
# In:
# =item C<static int pcc_reg_mov(PARROT_INTERP, unsigned char d, unsigned char s,
# void *vinfo)>
#
# compilers/imcc/pcc.c (boilerplate only)
# In:
# =item C<static Instruction * move_regs(PARROT_INTERP, IMC_Unit *unit,
# Instruction *ins, size_t n, SymReg **dest, SymReg **src)>
#
# compilers/imcc/pcc.c (boilerplate only)
# In:
# =item C<static void insert_tail_call(PARROT_INTERP, IMC_Unit *unit, Instruction
# *ins, SymReg *sub, SymReg *meth)>

'compilers/imcc/reg_alloc.c'

# 11 function(s) lacking documentation:
# compilers/imcc/reg_alloc.c (boilerplate only)
# In:
# =item C<static unsigned int* ig_get_word(int i, int j, int N, unsigned int
# *graph, int *bit_ofs)>
#
# compilers/imcc/reg_alloc.c (boilerplate only)
# In:
# =item C<static void ig_set(int i, int j, int N, unsigned int *graph)>
#
# compilers/imcc/reg_alloc.c (boilerplate only)
# In:
# =item C<unsigned int ig_test(int i, int j, int N, unsigned int *graph)>
#
# compilers/imcc/reg_alloc.c (boilerplate only)
# In:
# =item C<static unsigned int* ig_allocate(int N)>
#
# compilers/imcc/reg_alloc.c (boilerplate only)
# In:
# =item C<void free_reglist(IMC_Unit *unit)>
#
# compilers/imcc/reg_alloc.c (boilerplate only)
# In:
# =item C<void graph_coloring_reg_alloc(PARROT_INTERP, IMC_Unit *unit)>
#
# compilers/imcc/reg_alloc.c (boilerplate only)
# In:
# =item C<static void sort_reglist(IMC_Unit *unit)>
#
# compilers/imcc/reg_alloc.c (boilerplate only)
# In:
# =item C<static void compute_one_du_chain(SymReg *r, IMC_Unit *unit)>
#
# compilers/imcc/reg_alloc.c (boilerplate only)
# In:
# =item C<static void vanilla_reg_alloc(PARROT_INTERP, IMC_Unit *unit)>
#
# compilers/imcc/reg_alloc.c (boilerplate only)
# In:
# =item C<static void allocate_lexicals(PARROT_INTERP, IMC_Unit *unit)>
#
# compilers/imcc/reg_alloc.c (boilerplate only)
# In:
# =item C<static void allocate_non_volatile(PARROT_INTERP, IMC_Unit *unit)>

'compilers/imcc/symreg.c'

# 1 function(s) lacking documentation:
# compilers/imcc/symreg.c (boilerplate only)
# In:
# =item C<static int int_overflows(const SymReg *r)>

'compilers/pirc/src/pircapi.c'

# 2 function(s) lacking documentation:
# compilers/pirc/src/pircapi.c (boilerplate only)
# In:
# =item C<void parse_file(PARROT_INTERP, int flexdebug, FILE *infile, char * const
# filename, int flags, int thr_id, unsigned macro_size, char * const outputfile)>
#
# compilers/pirc/src/pircapi.c (boilerplate only)
# In:
# =item C<PackFile_ByteCode * pirc_compile_file(PARROT_INTERP, const char
# *filename, STRING **error_message)>


'config/gen/platform/ansi/dl.c'

# 4 function(s) lacking documentation:
# config/gen/platform/ansi/dl.c (boilerplate only)
# In:
# =item C<void * Parrot_dlopen(const char *filename)>
#
# config/gen/platform/ansi/dl.c (boilerplate only)
# In:
# =item C<const char * Parrot_dlerror(void)>
#
# config/gen/platform/ansi/dl.c (boilerplate only)
# In:
# =item C<void * Parrot_dlsym(void *handle, const char *symbol)>
#
# config/gen/platform/ansi/dl.c (boilerplate only)
# In:
# =item C<int Parrot_dlclose(void *handle)>

'config/gen/platform/ansi/exec.c'

# 1 function(s) lacking documentation:
# config/gen/platform/ansi/exec.c (boilerplate only)
# In:
# =item C<INTVAL Parrot_Run_OS_Command_Argv(PARROT_INTERP, PMC *cmdargs)>

'config/gen/platform/ansi/time.c'

# 3 function(s) lacking documentation:
# config/gen/platform/ansi/time.c (boilerplate only)
# In:
# =item C<INTVAL Parrot_intval_time(void)>
#
# config/gen/platform/ansi/time.c (boilerplate only)
# In:
# =item C<FLOATVAL Parrot_floatval_time(void)>
#
# config/gen/platform/ansi/time.c (boilerplate only)
# In:
# =item C<void Parrot_sleep(unsigned int seconds)>

'config/gen/platform/darwin/memalign.c'

# 6 function(s) lacking documentation:
# config/gen/platform/darwin/memalign.c (boilerplate only)
# In:
# =item C<static unsigned long log2int(unsigned long x)>
#
# config/gen/platform/darwin/memalign.c (boilerplate only)
# In:
# =item C<static unsigned long roundDownPowerOf2(unsigned long x)>
#
# config/gen/platform/darwin/memalign.c (boilerplate only)
# In:
# =item C<static unsigned long roundUpPowerOf2(unsigned long x)>
#
# config/gen/platform/darwin/memalign.c (boilerplate only)
# In:
# =item C<static unsigned long roundUpToPageBoundary(unsigned long x)>
#
# config/gen/platform/darwin/memalign.c (boilerplate only)
# In:
# =item C<void * Parrot_memalign(size_t align, size_t size)>
#
# config/gen/platform/darwin/memalign.c (boilerplate only)
# In:
# =item C<void Parrot_free_memalign(void *p)>

'config/gen/platform/generic/dl.c'

# 4 function(s) lacking documentation:
# config/gen/platform/generic/dl.c (boilerplate only)
# In:
# =item C<void * Parrot_dlopen(const char *filename)>
#
# config/gen/platform/generic/dl.c (boilerplate only)
# In:
# =item C<const char * Parrot_dlerror(void)>
#
# config/gen/platform/generic/dl.c (boilerplate only)
# In:
# =item C<void * Parrot_dlsym(void *handle, const char *symbol)>
#
# config/gen/platform/generic/dl.c (boilerplate only)
# In:
# =item C<int Parrot_dlclose(void *handle)>
'config/gen/platform/generic/exec.c'

# 1 function(s) lacking documentation:
# config/gen/platform/generic/exec.c (boilerplate only)
# In:
# =item C<INTVAL Parrot_Run_OS_Command_Argv(PARROT_INTERP, PMC *cmdargs)>

'config/gen/platform/generic/math.c'

# 1 function(s) lacking documentation:
# config/gen/platform/generic/math.c (boilerplate only)
# In:
# =item C<int Parrot_signbit_l(long double x)>

'config/gen/platform/generic/stat.c'

# 7 function(s) lacking documentation:
# config/gen/platform/generic/stat.c (boilerplate only)
# In:
# =item C<PMC * Parrot_stat_file(PARROT_INTERP, STRING *filename)>
#
# config/gen/platform/generic/stat.c (boilerplate only)
# In:
# =item C<PMC * Parrot_stat_info_pmc(PARROT_INTERP, STRING *filename, INTVAL
# thing)>
#
# config/gen/platform/generic/stat.c (boilerplate only)
# In:
# =item C<static INTVAL stat_common(PARROT_INTERP, struct stat *statbuf, INTVAL
# thing, int status)>
#
# config/gen/platform/generic/stat.c (boilerplate only)
# In:
# =item C<INTVAL Parrot_stat_info_intval(PARROT_INTERP, STRING *file, INTVAL
# thing)>
#
# config/gen/platform/generic/stat.c (boilerplate only)
# In:
# =item C<INTVAL Parrot_fstat_info_intval(PARROT_INTERP, INTVAL file, INTVAL
# thing)>
#
# config/gen/platform/generic/stat.c (boilerplate only)
# In:
# =item C<FLOATVAL Parrot_stat_info_floatval(PARROT_INTERP, STRING *filename,
# INTVAL thing)>
#
# config/gen/platform/generic/stat.c (boilerplate only)
# In:
# =item C<STRING * Parrot_stat_info_string(PARROT_INTERP, STRING *filename, INTVAL
# thing)>

'config/gen/platform/generic/time.c'

# 6 function(s) lacking documentation:
# config/gen/platform/generic/time.c (boilerplate only)
# In:
# =item C<INTVAL Parrot_intval_time(void)>
#
# config/gen/platform/generic/time.c (boilerplate only)
# In:
# =item C<FLOATVAL Parrot_floatval_time(void)>
#
# config/gen/platform/generic/time.c (boilerplate only)
# In:
# =item C<void Parrot_sleep(unsigned int seconds)>
#
# config/gen/platform/generic/time.c (boilerplate only)
# In:
# =item C<struct tm * Parrot_gmtime_r(const time_t *t, struct tm *tm)>
#
# config/gen/platform/generic/time.c (boilerplate only)
# In:
# =item C<struct tm * Parrot_localtime_r(const time_t *t, struct tm *tm)>
#
# config/gen/platform/generic/time.c (boilerplate only)
# In:
# =item C<char* Parrot_asctime_r(const struct tm *tm, char *buffer)>

'config/gen/platform/netbsd/math.c'

# 1 function(s) lacking documentation:
# config/gen/platform/netbsd/math.c (boilerplate only)
# In:
# =item C<int Parrot_signbit_l(long double x)>

'config/gen/platform/openbsd/math.c'

# 1 function(s) lacking documentation:
# config/gen/platform/openbsd/math.c (boilerplate only)
# In:
# =item C<int Parrot_signbit_l(long double x)>

'config/gen/platform/solaris/math.c'

# 1 function(s) lacking documentation:
# config/gen/platform/solaris/math.c (boilerplate only)
# In:
# =item C<int Parrot_signbit_l(long double x)>

'config/gen/platform/solaris/time.c'

# 6 function(s) lacking documentation:
# config/gen/platform/solaris/time.c (boilerplate only)
# In:
# =item C<INTVAL Parrot_intval_time(void)>
#
# config/gen/platform/solaris/time.c (boilerplate only)
# In:
# =item C<FLOATVAL Parrot_floatval_time(void)>
#
# config/gen/platform/solaris/time.c (boilerplate only)
# In:
# =item C<void Parrot_sleep(unsigned int seconds)>
#
# config/gen/platform/solaris/time.c (boilerplate only)
# In:
# =item C<struct tm * Parrot_gmtime_r(const time_t *t, struct tm *tm)>
#
# config/gen/platform/solaris/time.c (boilerplate only)
# In:
# =item C<struct tm * Parrot_localtime_r(const time_t *t, struct tm *tm)>
#
# config/gen/platform/solaris/time.c (boilerplate only)
# In:
# =item C<char* Parrot_asctime_r(const struct tm *tm, char *buffer)>

'src/string/charset/ascii.c'

# 2 function(s) lacking documentation:
# src/string/charset/ascii.c (boilerplate only)
# In:
# =item C<static INTVAL is_cclass(PARROT_INTERP, INTVAL flags, const STRING
# *source_string, UINTVAL offset)>
#
# src/string/charset/ascii.c (boilerplate only)
# In:
# =item C<static INTVAL find_not_cclass(PARROT_INTERP, INTVAL flags, STRING
# *source_string, UINTVAL offset, UINTVAL count)>

'src/string/charset/binary.c'

# 4 function(s) lacking documentation:
# src/string/charset/binary.c (boilerplate only)
# In:
# =item C<static INTVAL is_cclass(PARROT_INTERP, INTVAL flags, const STRING
# *source_string, UINTVAL offset)>
#
# src/string/charset/binary.c (boilerplate only)
# In:
# =item C<static INTVAL find_cclass(PARROT_INTERP, INTVAL flags, STRING
# *source_string, UINTVAL offset, UINTVAL count)>
#
# src/string/charset/binary.c (boilerplate only)
# In:
# =item C<static INTVAL find_not_cclass(PARROT_INTERP, INTVAL flags, STRING
# *source_string, UINTVAL offset, UINTVAL count)>
#
# src/string/charset/binary.c (boilerplate only)
# In:
# =item C<static STRING * string_from_codepoint(PARROT_INTERP, UINTVAL codepoint)>

'src/string/charset/iso-8859-1.c'

# 2 function(s) lacking documentation:
# src/string/charset/iso-8859-1.c (boilerplate only)
# In:
# =item C<static INTVAL is_cclass(PARROT_INTERP, INTVAL flags, const STRING
# *source_string, UINTVAL offset)>
#
# src/string/charset/iso-8859-1.c (boilerplate only)
# In:
# =item C<static INTVAL find_not_cclass(PARROT_INTERP, INTVAL flags, STRING
# *source_string, UINTVAL offset, UINTVAL count)>

'src/string/charset/unicode.c'

# 4 function(s) lacking documentation:
# src/string/charset/unicode.c (boilerplate only)
# In:
# =item C<static int u_iscclass(PARROT_INTERP, UINTVAL codepoint, INTVAL flags)>
#
# src/string/charset/unicode.c (boilerplate only)
# In:
# =item C<static INTVAL is_cclass(PARROT_INTERP, INTVAL flags, const STRING
# *source_string, UINTVAL offset)>
#
# src/string/charset/unicode.c (boilerplate only)
# In:
# =item C<static INTVAL find_cclass(PARROT_INTERP, INTVAL flags, STRING
# *source_string, UINTVAL offset, UINTVAL count)>
#
# src/string/charset/unicode.c (boilerplate only)
# In:
# =item C<static INTVAL find_not_cclass(PARROT_INTERP, INTVAL flags, STRING
# *source_string, UINTVAL offset, UINTVAL count)>

'src/tsq.c'

# 1 function(s) lacking documentation:
# src/tsq.c (boilerplate only)
# In:
# =item C<void queue_signal(QUEUE *queue)>

'src/debug.c'

# 6 function(s) lacking documentation:
# src/debug.c (boilerplate only)
# In:
# =item C<static const DebuggerCmd * get_cmd(const char **cmd)>
#
# src/debug.c (boilerplate only)
# In:
# =item C<static const char * skip_whitespace(const char *cmd)>
#
# src/debug.c (boilerplate only)
# In:
# =item C<static unsigned long get_uint(const char **cmd, unsigned int def)>
#
# src/debug.c (boilerplate only)
# In:
# =item C<static unsigned long get_ulong(const char **cmd, unsigned long def)>
#
# src/debug.c (boilerplate only)
# In:
# =item C<static unsigned short condition_regtype(const char *cmd)>
#
# src/debug.c (boilerplate only)
# In:
# =item C<static void list_breakpoints(PDB_t *pdb)>