index ea6ed0a099a2a822bd119dc6c16ebadcad594c25..837b6505bca2e22c530f5c5a3a7d104869a0dfcb 100644 (file)
--- a/src/liboconfig/parser.y
+++ b/src/liboconfig/parser.y
;
block_begin:
+ OPENBRAC identifier CLOSEBRAC EOL
+ {
+ memset (&$$, '\0', sizeof ($$));
+ $$.key = $2;
+ }
+ |
OPENBRAC identifier argument_list CLOSEBRAC EOL
{
memset (&$$, '\0', sizeof ($$));
statement_list statement
{
$$ = $1;
- if ($2.values_num > 0)
+ if (($2.values_num > 0) || ($2.children_num > 0))
{
$$.statement_num++;
$$.statement = realloc ($$.statement, $$.statement_num * sizeof (oconfig_item_t));
}
| statement
{
- if ($1.values_num > 0)
+ if (($1.values_num > 0) || ($1.children_num > 0))
{
$$.statement = malloc (sizeof (oconfig_item_t));
$$.statement[0] = $1;