{'fraction_non_alphanumeric': 0.011695906432748537, 'fraction_numerical': 0.0, 'mean_word_length': 4.775280898876405, 'pattern_counts': {'":': 0, '<': 0, '<?xml version=': 0, '>': 0, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
Patterns for returning error information in C

Error handling is part of any industrial strength code. In programming languages like C, which have no support for enhanced error handling mechanisms like exceptions, error handling is a non-trivial task and many decisions on how to implement it have to be made. This paper documents best practices for these decisions as well as their benefits and liabilities in form of design patterns on the topic of how to return error information in the C programming language.