check header_comments (minimum, 10);
search header_comments (model, "licenseheader.pat");
check improper_initialization (out_parameter);
-- check improper_initialization (access variable);
search improper_initialization (initialized_variable);
check expressions (and_then, or_else, mixed_operators);
search global_references (all, ahven);
check naming_convention
(variable, case_sensitive "^[A-Z][a-z0-9]*(_[A-Z0-9][a-z0-9]*)*$");
check naming_convention
(type, case_sensitive "^[A-Z][a-z0-9]*(_[A-Z0-9][a-z0-9]*)*$");
check naming_convention
(enumeration, case_sensitive "^[A-Z][A-Z0-9]*(_[A-Z0-9][A-Z0-9]*)*$");
check max_statement_nesting (loop, 2);
search max_statement_nesting (all, 3);
check simplifiable_statements (if_for_case, block, null);
check simplifiable_expressions (range, logical);
check characters (control, trailing_space);
search characters (not_iso_646);
check declarations (integer_type);
check declarations (task);
check directly_accessed_globals;
-- No variables in package specs
check usage (variable, from_spec);
Hiding: check local_hiding (strict);
-- No long code blocks
check Max_Size (if_branch, 30);
check Max_Size (unnamed_loop, 20);
check Max_Size (block, 25);
check style (negative_condition);
check style (casing_identifier, original);
check style (multiple_elements);