%type <values> namevalue_conf
%type <val> template template_conf
%type <val> template_task_or_admin template_task_namevalue_conf
-%type <val> template_admin_namevalue_conf
+%type <val> template_admin_namevalue_conf template_task_conf
+%type <val> template_admin_conf
%start start
%%
;
template_task_or_admin
- : TASK '{' template_task_namevalue_conf '}' admin_conf
+ : TASK '{' template_task_namevalue_conf '}' template_admin_conf
{
$$ = $3 && $5;
if (!$$) {
return $$;
}
}
- | ADMIN '{' template_admin_namevalue_conf '}' task_conf
+ | ADMIN '{' template_admin_namevalue_conf '}' template_task_conf
{
$$ = $3 && $5;
if (!$$) {
return $$;
}
}
- | task_namevalue_conf ID '=' ID ';'
+ | template_task_namevalue_conf ID '=' ID ';'
{
$$ = $1 && template_config_group_task_perm($2, $4);
if (!$$) {
return $$;
}
}
- | admin_namevalue_conf ID '=' ID ';'
+ | template_admin_namevalue_conf ID '=' ID ';'
{
$$ = $1 && template_config_group_admin_perm($2, $4);
if (!$$) {
}
;
+template_admin_conf: ADMIN '{' template_admin_namevalue_conf '}'
+ {
+ $$ = $3;
+ if (!$$) {
+ fprintf(stderr, "parsing failed at line number %d\n",
+ line_no);
+ $$ = ECGCONFIGPARSEFAIL;
+ return $$;
+ }
+ }
+ ;
+
+template_task_conf: TASK '{' template_task_namevalue_conf '}'
+ {
+ $$ = $3;
+ if (!$$) {
+ fprintf(stderr, "parsing failed at line number %d\n",
+ line_no);
+ $$ = ECGCONFIGPARSEFAIL;
+ return $$;
+ }
+ }
+ ;
+
mountvalue_conf
: ID '=' ID ';'
{