<link href="https://developer.gnome.org/glib/stable/glib-Error-Reporting.html">GError</link> je standardní mechanizmus hlášení chyb pro kód používající GLib a může na něj být pohlíženo jako na implementaci <link href="https://cs.wikipedia.org/wiki/V%C3%BDjimka_(programov%C3%A1n%C3%AD)">výjimek</link> v jazyce C.
Libovolný druh selhání za běhu (cokoliv, co není <link xref="preconditions">programová chyba</link>) musí být obslouženo vložením parametru GError** do funkce a před návratem z funkce nastavením vhodného a smysluplného popisu selhání v GError. Programové chyby se naopak pomocí GError obsluhovat nesmí: místo toho použijte assertion a podmíněné testy před a po.
Použití GError byste měli dávat přednost před prostým návratem kódu, protože poskytuje více informací a navíc je podporován všemi nástroji GLib. Například <link xref="introspection">introspekce API</link> bude automaticky detekovat všechny parametry GError, protože je pak umí převést na výjimky v jiných jazycích.
Výpis varování do konzole se nesmí provádět v programovém kódu knihovny. Použijte GError a volající kód jej může propagovat dále, rozhodnout se jej zpracovat nebo se rozhodnout jej vypsat do konzole. V ideálním případě je jediným kódem, který vypisuje do konzole, programový kód nejvyšší úrovně aplikace a ne kód knihovny.
Volání kterékoliv funkce, které přebírá GError**, by mělo takovýto parametr poskytnout a pak příslušně obsloužit vrácený GError. Je jen velmi málo situací, kdy je přijatelné potenciální chybu ignorovat předáním NULL do parametru GError**.
Dokumentace k API knihovny GLib obsahuje <link href="https://developer.gnome.org/glib/stable/glib-Error-Reporting.html#glib-Error-Reporting.description">uceleného průvodce použitím GError</link>.