#! /usr/bin/perl -w

use strict;
use CONFIG::Plain;

my $config;
my $line;
my $error;

$config = CONFIG::Plain->new('sample.rc');

#####################################################################
# GLOBAL ERROR HANDLING
while (defined ($error = $config->getline_error)) {
	print("GLOBAL ERROR: ". $error ."\n");
}

#####################################################################
# LINE BASED ERROR HANDLING
while (defined ($line = $config->getline())) {
	$error = $config->getline_error;
	if (defined $error) {
		### line has error(s)
		printf("ERROR in %s:%d\n",
			$config->getline_file, $config->getline_number);	
		do { ### report all errors
			printf("	%s\n", $error);
		} while (defined ($error = $config->getline_error));
	} else {
		### line has no errors
		printf("%s:%d> %s\n",	$config->getline_file,
				$config->getline_number,
				$line);
	}
}

$config->close;
