From patchwork Thu Dec 8 13:52:50 2016 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Cedric Bosdonnat X-Patchwork-Id: 9466447 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork.web.codeaurora.org (Postfix) with ESMTP id 3558B60231 for ; Thu, 8 Dec 2016 13:58:02 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 18FCA284F6 for ; Thu, 8 Dec 2016 13:58:02 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 09E4228589; Thu, 8 Dec 2016 13:58:02 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-4.2 required=2.0 tests=BAYES_00, RCVD_IN_DNSWL_MED autolearn=ham version=3.3.1 Received: from lists.xenproject.org (lists.xenproject.org [192.237.175.120]) (using TLSv1.2 with cipher AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by mail.wl.linuxfoundation.org (Postfix) with ESMTPS id DE0BA284F6 for ; Thu, 8 Dec 2016 13:57:57 +0000 (UTC) Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.84_2) (envelope-from ) id 1cEzAD-0005rj-2D; Thu, 08 Dec 2016 13:55:09 +0000 Received: from mail6.bemta6.messagelabs.com ([193.109.254.103]) by lists.xenproject.org with esmtp (Exim 4.84_2) (envelope-from ) id 1cEzAB-0005qi-0b for xen-devel@lists.xen.org; Thu, 08 Dec 2016 13:55:07 +0000 Received: from [193.109.254.147] by server-6.bemta-6.messagelabs.com id EE/81-28843-A3669485; Thu, 08 Dec 2016 13:55:06 +0000 X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFvrNLMWRWlGSWpSXmKPExsVyuP0uq65Fmme EQWuXhsWSj4tZHBg9ju7+zRTAGMWamZeUX5HAmtF0toGxYMFs1orJk3axNTDuP8ncxcjFISSw hFHi9YvdQA4nB5uAvUTXn6NMILaIgLTEtc+XGUGKmAXaGSU+3NvGCpIQFtCR6Jz5jRHEZhFQl Tjes4AFxOYVsJCYenMdWFxCQF5iV9tFVoi4oMTJmU+AajiABqlLrJ8nBBJmBipp3jqbeQIj9y wkVbMQqmYhqVrAyLyKUaM4tagstUjX0EAvqSgzPaMkNzEzB8gz08tNLS5OTE/NSUwq1kvOz93 ECAwUBiDYwXhvWcAhRkkOJiVR3l0T3COE+JLyUyozEosz4otKc1KLDzHKcHAoSfDKpnpGCAkW paanVqRl5gBDFiYtwcGjJMKrmwyU5i0uSMwtzkyHSJ1iVJQS572QApQQAElklObBtcHi5BKjr JQwLyPQIUI8BalFuZklqPKvGMU5GJWEeSVAtvNk5pXATX8FtJgJaPG8G+4gi0sSEVJSDYzpQh NO3mPUskgs3ZdxtHlObVRdXQ3vMq/9/e0HS39fa++9X8b/O7FhSb2jn+v73vOObz7abJ8zr2j CQnfZZzNL0xOvfox9En82qVVrRfWKC00Pfks8eSvJwyldfVl8jV3HwQlM7eqWn2f/XfJv748t JRfCw5lYtT+f7WncejL98rJM/yeZLB+UWIozEg21mIuKEwEt+c7ajgIAAA== X-Env-Sender: cbosdonnat@suse.com X-Msg-Ref: server-4.tower-27.messagelabs.com!1481205303!75562540!1 X-Originating-IP: [195.135.221.5] X-SpamReason: No, hits=0.0 required=7.0 tests= X-StarScan-Received: X-StarScan-Version: 9.0.16; banners=-,-,- X-VirusChecked: Checked Received: (qmail 6902 invoked from network); 8 Dec 2016 13:55:04 -0000 Received: from smtp.nue.novell.com (HELO smtp.nue.novell.com) (195.135.221.5) by server-4.tower-27.messagelabs.com with DHE-RSA-AES256-GCM-SHA384 encrypted SMTP; 8 Dec 2016 13:55:04 -0000 Received: from laptop.vms (mhy71-2-88-167-63-197.fbx.proxad.net [88.167.63.197]) by smtp.nue.novell.com with ESMTP (TLS encrypted); Thu, 08 Dec 2016 14:52:59 +0100 From: =?UTF-8?q?C=C3=A9dric=20Bosdonnat?= To: xen-devel@lists.xen.org Date: Thu, 8 Dec 2016 14:52:50 +0100 Message-Id: <20161208135250.26380-1-cbosdonnat@suse.com> X-Mailer: git-send-email 2.11.0 MIME-Version: 1.0 Cc: Wei Liu , Ian Jackson , =?UTF-8?q?C=C3=A9dric=20Bosdonnat?= Subject: [Xen-devel] [PATCH v2] libxl: QED disks support X-BeenThere: xen-devel@lists.xen.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xen.org Sender: "Xen-devel" X-Virus-Scanned: ClamAV using ClamSMTP Qdisk supports qcow and qcow2, extend it to also support qed disk format. Signed-off-by: Cédric Bosdonnat --- v2: * Add qed to the list for possible format values in xl-disk-configuration.txt * Add LIBXL_HAVE_QED --- docs/misc/xl-disk-configuration.txt | 4 +- tools/libxl/libxl.h | 7 + tools/libxl/libxl_device.c | 1 + tools/libxl/libxl_dm.c | 1 + tools/libxl/libxl_types.idl | 1 + tools/libxl/libxl_utils.c | 2 + tools/libxl/libxlu_disk_l.c | 1018 ++++++++++++++++++----------------- tools/libxl/libxlu_disk_l.h | 53 +- tools/libxl/libxlu_disk_l.l | 3 +- 9 files changed, 548 insertions(+), 542 deletions(-) diff --git a/docs/misc/xl-disk-configuration.txt b/docs/misc/xl-disk-configuration.txt index b3402bc33a..310d2586c0 100644 --- a/docs/misc/xl-disk-configuration.txt +++ b/docs/misc/xl-disk-configuration.txt @@ -87,7 +87,7 @@ format ------ Description: Specifies the format of image file. -Supported values: raw, qcow, qcow2, vhd +Supported values: raw, qcow, qcow2, vhd, qed Deprecated values: None Default value: raw @@ -311,7 +311,7 @@ are found prepended to the format parameter - eg "tap:aio:qcow:". --------- Description: Specifies the format (deprecated) -Supported values: raw: qcow2: vhd: +Supported values: raw: qcow2: vhd: qed: In xend and old versions of libxl it was necessary to specify the format with a prefix. For compatibility, these three prefixes are diff --git a/tools/libxl/libxl.h b/tools/libxl/libxl.h index acbf47690e..3924464588 100644 --- a/tools/libxl/libxl.h +++ b/tools/libxl/libxl.h @@ -1012,6 +1012,13 @@ void libxl_mac_copy(libxl_ctx *ctx, libxl_mac *dst, const libxl_mac *src); */ #define LIBXL_HAVE_MEMKB_64BITS 1 +/* + * LIBXL_HAVE_QED + * + * If this is defined QED disk formats can be used for both HVM and PV guests. + */ +#define LIBXL_HAVE_QED 1 + typedef char **libxl_string_list; void libxl_string_list_dispose(libxl_string_list *sl); int libxl_string_list_length(const libxl_string_list *sl); diff --git a/tools/libxl/libxl_device.c b/tools/libxl/libxl_device.c index 3e7a1026c4..6c34141072 100644 --- a/tools/libxl/libxl_device.c +++ b/tools/libxl/libxl_device.c @@ -411,6 +411,7 @@ char *libxl__device_disk_string_of_format(libxl_disk_format format) case LIBXL_DISK_FORMAT_VHD: return "vhd"; case LIBXL_DISK_FORMAT_RAW: case LIBXL_DISK_FORMAT_EMPTY: return "aio"; + case LIBXL_DISK_FORMAT_QED: return "qed"; default: return NULL; } } diff --git a/tools/libxl/libxl_dm.c b/tools/libxl/libxl_dm.c index ad366a8cd3..8b373422f1 100644 --- a/tools/libxl/libxl_dm.c +++ b/tools/libxl/libxl_dm.c @@ -677,6 +677,7 @@ static const char *qemu_disk_format_string(libxl_disk_format format) case LIBXL_DISK_FORMAT_VHD: return "vpc"; case LIBXL_DISK_FORMAT_RAW: return "raw"; case LIBXL_DISK_FORMAT_EMPTY: return NULL; + case LIBXL_DISK_FORMAT_QED: return "qed"; default: return NULL; } } diff --git a/tools/libxl/libxl_types.idl b/tools/libxl/libxl_types.idl index a32c751b0e..a612d1f4ff 100644 --- a/tools/libxl/libxl_types.idl +++ b/tools/libxl/libxl_types.idl @@ -114,6 +114,7 @@ libxl_disk_format = Enumeration("disk_format", [ (3, "VHD"), (4, "RAW"), (5, "EMPTY"), + (6, "QED"), ]) libxl_disk_backend = Enumeration("disk_backend", [ diff --git a/tools/libxl/libxl_utils.c b/tools/libxl/libxl_utils.c index 49cbaa5b70..507ee56c7c 100644 --- a/tools/libxl/libxl_utils.c +++ b/tools/libxl/libxl_utils.c @@ -317,6 +317,8 @@ int libxl_string_to_backend(libxl_ctx *ctx, char *s, libxl_disk_backend *backend *backend = LIBXL_DISK_BACKEND_QDISK; } else if (!strcmp(p, "qcow2")) { *backend = LIBXL_DISK_BACKEND_QDISK; + } else if (!strcmp(p, "qed")) { + *backend = LIBXL_DISK_BACKEND_QDISK; } } out: diff --git a/tools/libxl/libxlu_disk_l.c b/tools/libxl/libxlu_disk_l.c index 54160caa66..fa09a69303 100644 --- a/tools/libxl/libxlu_disk_l.c +++ b/tools/libxl/libxlu_disk_l.c @@ -1,10 +1,7 @@ #line 2 "libxlu_disk_l.c" -#line 31 "libxlu_disk_l.l" #include "libxl_osdeps.h" /* must come before any other headers */ - - -#line 8 "libxlu_disk_l.c" +#line 5 "libxlu_disk_l.c" #define YY_INT_ALIGNED short int @@ -12,8 +9,8 @@ #define FLEX_SCANNER #define YY_FLEX_MAJOR_VERSION 2 -#define YY_FLEX_MINOR_VERSION 5 -#define YY_FLEX_SUBMINOR_VERSION 39 +#define YY_FLEX_MINOR_VERSION 6 +#define YY_FLEX_SUBMINOR_VERSION 1 #if YY_FLEX_SUBMINOR_VERSION > 0 #define FLEX_BETA #endif @@ -92,25 +89,13 @@ typedef unsigned int flex_uint32_t; #endif /* ! FLEXINT_H */ -#ifdef __cplusplus - -/* The "const" storage-class-modifier is valid. */ -#define YY_USE_CONST - -#else /* ! __cplusplus */ - -/* C99 requires __STDC__ to be defined as 1. */ -#if defined (__STDC__) - -#define YY_USE_CONST - -#endif /* defined (__STDC__) */ -#endif /* ! __cplusplus */ - -#ifdef YY_USE_CONST +/* TODO: this is always defined, so inline it */ #define yyconst const + +#if defined(__GNUC__) && __GNUC__ >= 3 +#define yynoreturn __attribute__((__noreturn__)) #else -#define yyconst +#define yynoreturn #endif /* Returned upon end-of-file. */ @@ -223,12 +208,12 @@ struct yy_buffer_state /* Size of input buffer in bytes, not including room for EOB * characters. */ - yy_size_t yy_buf_size; + int yy_buf_size; /* Number of characters read into yy_ch_buf, not including EOB * characters. */ - yy_size_t yy_n_chars; + int yy_n_chars; /* Whether we "own" the buffer - i.e., we know we created it, * and can realloc() it to grow it, and should free() it to @@ -307,7 +292,7 @@ static void xlu__disk_yy_init_buffer (YY_BUFFER_STATE b,FILE *file ,yyscan_t yys YY_BUFFER_STATE xlu__disk_yy_scan_buffer (char *base,yy_size_t size ,yyscan_t yyscanner ); YY_BUFFER_STATE xlu__disk_yy_scan_string (yyconst char *yy_str ,yyscan_t yyscanner ); -YY_BUFFER_STATE xlu__disk_yy_scan_bytes (yyconst char *bytes,yy_size_t len ,yyscan_t yyscanner ); +YY_BUFFER_STATE xlu__disk_yy_scan_bytes (yyconst char *bytes,int len ,yyscan_t yyscanner ); void *xlu__disk_yyalloc (yy_size_t ,yyscan_t yyscanner ); void *xlu__disk_yyrealloc (void *,yy_size_t ,yyscan_t yyscanner ); @@ -337,7 +322,7 @@ void xlu__disk_yyfree (void * ,yyscan_t yyscanner ); #define YY_AT_BOL() (YY_CURRENT_BUFFER_LVALUE->yy_at_bol) -#define xlu__disk_yywrap(yyscanner) 1 +#define xlu__disk_yywrap(yyscanner) (/*CONSTCOND*/1) #define YY_SKIP_YYWRAP typedef unsigned char YY_CHAR; @@ -349,7 +334,7 @@ typedef int yy_state_type; static yy_state_type yy_get_previous_state (yyscan_t yyscanner ); static yy_state_type yy_try_NUL_trans (yy_state_type current_state ,yyscan_t yyscanner); static int yy_get_next_buffer (yyscan_t yyscanner ); -static void yy_fatal_error (yyconst char msg[] ,yyscan_t yyscanner ); +static void yynoreturn yy_fatal_error (yyconst char* msg ,yyscan_t yyscanner ); /* Done after the current pattern has been matched and before the * corresponding action - sets up yytext. @@ -357,7 +342,7 @@ static void yy_fatal_error (yyconst char msg[] ,yyscan_t yyscanner ); #define YY_DO_BEFORE_ACTION \ yyg->yytext_ptr = yy_bp; \ yyg->yytext_ptr -= yyg->yy_more_len; \ - yyleng = (size_t) (yy_cp - yyg->yytext_ptr); \ + yyleng = (int) (yy_cp - yyg->yytext_ptr); \ yyg->yy_hold_char = *yy_cp; \ *yy_cp = '\0'; \ yyg->yy_c_buf_p = yy_cp; @@ -371,7 +356,7 @@ struct yy_trans_info flex_int32_t yy_verify; flex_int32_t yy_nxt; }; -static yyconst flex_int16_t yy_acclist[575] = +static yyconst flex_int16_t yy_acclist[576] = { 0, 35, 35, 37, 33, 34, 36, 8193, 33, 34, 36, 16385, 8193, 33, 36,16385, 33, 34, 36, 34, 36, @@ -384,61 +369,61 @@ static yyconst flex_int16_t yy_acclist[575] = 8193, 33, 33, 8224, 33,16416, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, - 33, 33, 33, 33, 33, 33, 33, 33, 33, 35, - 8193, 33, 8193, 33, 8193, 8224, 33, 8224, 33, 8224, - 23, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, - 33, 33, 33, 33, 33, 8224, 33, 8224, 33, 8224, - 23, 33, 33, 28, 8224, 33,16416, 33, 33, 15, - 33, 33, 33, 33, 33, 33, 33, 33, 33, 8217, - 8224, 33,16409,16416, 33, 33, 31, 8224, 33,16416, - 33, 8216, 8224, 33,16408,16416, 33, 33, 8219, 8224, - 33,16411,16416, 33, 33, 33, 33, 33, 28, 8224, - - 33, 28, 8224, 33, 28, 33, 28, 8224, 33, 3, - 33, 15, 33, 33, 33, 33, 33, 30, 8224, 33, - 16416, 33, 33, 33, 8217, 8224, 33, 8217, 8224, 33, - 8217, 33, 8217, 8224, 33, 33, 31, 8224, 33, 31, - 8224, 33, 31, 33, 31, 8224, 8216, 8224, 33, 8216, - 8224, 33, 8216, 33, 8216, 8224, 33, 8219, 8224, 33, - 8219, 8224, 33, 8219, 33, 8219, 8224, 33, 33, 10, - 33, 33, 28, 8224, 33, 28, 8224, 33, 28, 8224, - 28, 33, 28, 33, 3, 33, 33, 33, 33, 33, - 33, 33, 30, 8224, 33, 30, 8224, 33, 30, 33, - - 30, 8224, 33, 33, 29, 8224, 33,16416, 8217, 8224, - 33, 8217, 8224, 33, 8217, 8224, 8217, 33, 8217, 33, - 33, 31, 8224, 33, 31, 8224, 33, 31, 8224, 31, - 33, 31, 8216, 8224, 33, 8216, 8224, 33, 8216, 8224, - 8216, 33, 8216, 33, 8219, 8224, 33, 8219, 8224, 33, - 8219, 8224, 8219, 33, 8219, 33, 33, 10, 23, 10, - 7, 33, 33, 33, 33, 33, 33, 33, 13, 33, - 30, 8224, 33, 30, 8224, 33, 30, 8224, 30, 33, - 30, 2, 33, 29, 8224, 33, 29, 8224, 33, 29, - 33, 29, 8224, 16, 33, 33, 11, 33, 22, 10, - - 10, 23, 7, 23, 7, 33, 8, 33, 33, 33, - 33, 6, 33, 13, 33, 2, 23, 2, 33, 29, - 8224, 33, 29, 8224, 33, 29, 8224, 29, 33, 29, - 16, 33, 33, 11, 23, 11, 26, 8224, 33,16416, - 22, 23, 22, 7, 7, 23, 33, 8, 23, 8, - 33, 33, 33, 33, 6, 23, 6, 6, 23, 6, - 23, 33, 2, 2, 23, 33, 33, 11, 11, 23, - 26, 8224, 33, 26, 8224, 33, 26, 33, 26, 8224, - 22, 23, 33, 8, 8, 23, 33, 33, 17, 18, - 6, 6, 23, 6, 6, 33, 33, 14, 33, 26, - - 8224, 33, 26, 8224, 33, 26, 8224, 26, 33, 26, - 33, 33, 33, 17, 23, 17, 18, 23, 18, 6, - 6, 33, 33, 14, 33, 20, 9, 19, 17, 17, - 23, 18, 18, 23, 6, 5, 6, 33, 21, 20, - 23, 20, 9, 23, 9, 19, 23, 19, 4, 6, - 5, 6, 33, 21, 23, 21, 20, 20, 23, 9, - 9, 23, 19, 19, 23, 4, 6, 12, 33, 21, - 21, 23, 12, 33 + 35, 8193, 33, 8193, 33, 8193, 8224, 33, 8224, 33, + 8224, 23, 33, 33, 33, 33, 33, 33, 33, 33, + 33, 33, 33, 33, 33, 33, 33, 33, 33, 33, + 33, 33, 33, 33, 33, 33, 8224, 33, 8224, 33, + 8224, 23, 33, 33, 28, 8224, 33,16416, 33, 33, + 15, 33, 33, 33, 33, 33, 33, 33, 33, 33, + 8217, 8224, 33,16409,16416, 33, 33, 31, 8224, 33, + 16416, 33, 8216, 8224, 33,16408,16416, 33, 33, 8219, + 8224, 33,16411,16416, 33, 33, 33, 33, 33, 28, + + 8224, 33, 28, 8224, 33, 28, 33, 28, 8224, 33, + 3, 33, 15, 33, 33, 33, 33, 33, 30, 8224, + 33,16416, 33, 33, 33, 8217, 8224, 33, 8217, 8224, + 33, 8217, 33, 8217, 8224, 33, 33, 31, 8224, 33, + 31, 8224, 33, 31, 33, 31, 8224, 8216, 8224, 33, + 8216, 8224, 33, 8216, 33, 8216, 8224, 33, 8219, 8224, + 33, 8219, 8224, 33, 8219, 33, 8219, 8224, 33, 33, + 10, 33, 33, 28, 8224, 33, 28, 8224, 33, 28, + 8224, 28, 33, 28, 33, 3, 33, 33, 33, 33, + 33, 33, 33, 30, 8224, 33, 30, 8224, 33, 30, + + 33, 30, 8224, 33, 33, 29, 8224, 33,16416, 8217, + 8224, 33, 8217, 8224, 33, 8217, 8224, 8217, 33, 8217, + 33, 33, 31, 8224, 33, 31, 8224, 33, 31, 8224, + 31, 33, 31, 8216, 8224, 33, 8216, 8224, 33, 8216, + 8224, 8216, 33, 8216, 33, 8219, 8224, 33, 8219, 8224, + 33, 8219, 8224, 8219, 33, 8219, 33, 33, 10, 23, + 10, 7, 33, 33, 33, 33, 33, 33, 33, 13, + 33, 30, 8224, 33, 30, 8224, 33, 30, 8224, 30, + 33, 30, 2, 33, 29, 8224, 33, 29, 8224, 33, + 29, 33, 29, 8224, 16, 33, 33, 11, 33, 22, + + 10, 10, 23, 7, 23, 7, 33, 8, 33, 33, + 33, 33, 6, 33, 13, 33, 2, 23, 2, 33, + 29, 8224, 33, 29, 8224, 33, 29, 8224, 29, 33, + 29, 16, 33, 33, 11, 23, 11, 26, 8224, 33, + 16416, 22, 23, 22, 7, 7, 23, 33, 8, 23, + 8, 33, 33, 33, 33, 6, 23, 6, 6, 23, + 6, 23, 33, 2, 2, 23, 33, 33, 11, 11, + 23, 26, 8224, 33, 26, 8224, 33, 26, 33, 26, + 8224, 22, 23, 33, 8, 8, 23, 33, 33, 17, + 18, 6, 6, 23, 6, 6, 33, 33, 14, 33, + + 26, 8224, 33, 26, 8224, 33, 26, 8224, 26, 33, + 26, 33, 33, 33, 17, 23, 17, 18, 23, 18, + 6, 6, 33, 33, 14, 33, 20, 9, 19, 17, + 17, 23, 18, 18, 23, 6, 5, 6, 33, 21, + 20, 23, 20, 9, 23, 9, 19, 23, 19, 4, + 6, 5, 6, 33, 21, 23, 21, 20, 20, 23, + 9, 9, 23, 19, 19, 23, 4, 6, 12, 33, + 21, 21, 23, 12, 33 } ; -static yyconst flex_int16_t yy_accept[356] = +static yyconst flex_int16_t yy_accept[357] = { 0, 1, 1, 1, 2, 3, 4, 7, 12, 16, 19, 21, 24, 27, 30, 33, 36, 39, 42, 45, 48, @@ -446,42 +431,42 @@ static yyconst flex_int16_t yy_accept[356] = 74, 76, 79, 81, 82, 83, 84, 87, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, - 109, 110, 111, 113, 115, 116, 118, 120, 121, 122, + 109, 110, 111, 112, 114, 116, 117, 119, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, - 143, 144, 145, 146, 148, 150, 151, 152, 153, 154, - - 158, 159, 160, 162, 163, 164, 165, 166, 167, 168, - 169, 170, 175, 176, 177, 181, 182, 187, 188, 189, - 194, 195, 196, 197, 198, 199, 202, 205, 207, 209, - 210, 212, 214, 215, 216, 217, 218, 222, 223, 224, - 225, 228, 231, 233, 235, 236, 237, 240, 243, 245, - 247, 250, 253, 255, 257, 258, 261, 264, 266, 268, - 269, 270, 271, 272, 273, 276, 279, 281, 283, 284, - 285, 287, 288, 289, 290, 291, 292, 293, 296, 299, - 301, 303, 304, 305, 309, 312, 315, 317, 319, 320, - 321, 322, 325, 328, 330, 332, 333, 336, 339, 341, - - 343, 344, 345, 348, 351, 353, 355, 356, 357, 358, - 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, - 371, 374, 377, 379, 381, 382, 383, 384, 387, 390, - 392, 394, 396, 397, 398, 399, 400, 401, 403, 405, - 406, 407, 408, 409, 410, 411, 412, 413, 414, 416, - 418, 419, 420, 423, 426, 428, 430, 431, 433, 434, - 436, 437, 441, 443, 444, 445, 447, 448, 450, 451, - 452, 453, 454, 455, 457, 458, 460, 462, 463, 464, - 466, 467, 468, 469, 471, 474, 477, 479, 481, 483, - 484, 485, 487, 488, 489, 490, 491, 492, 494, 495, - - 496, 497, 498, 500, 503, 506, 508, 510, 511, 512, - 513, 514, 516, 517, 519, 520, 521, 522, 523, 524, - 526, 527, 528, 529, 530, 532, 533, 535, 536, 538, - 539, 540, 542, 543, 545, 546, 548, 549, 551, 553, - 554, 556, 557, 558, 560, 561, 563, 564, 566, 568, - 570, 571, 573, 575, 575 + 143, 144, 145, 146, 147, 149, 151, 152, 153, 154, + + 155, 159, 160, 161, 163, 164, 165, 166, 167, 168, + 169, 170, 171, 176, 177, 178, 182, 183, 188, 189, + 190, 195, 196, 197, 198, 199, 200, 203, 206, 208, + 210, 211, 213, 215, 216, 217, 218, 219, 223, 224, + 225, 226, 229, 232, 234, 236, 237, 238, 241, 244, + 246, 248, 251, 254, 256, 258, 259, 262, 265, 267, + 269, 270, 271, 272, 273, 274, 277, 280, 282, 284, + 285, 286, 288, 289, 290, 291, 292, 293, 294, 297, + 300, 302, 304, 305, 306, 310, 313, 316, 318, 320, + 321, 322, 323, 326, 329, 331, 333, 334, 337, 340, + + 342, 344, 345, 346, 349, 352, 354, 356, 357, 358, + 359, 361, 362, 363, 364, 365, 366, 367, 368, 369, + 370, 372, 375, 378, 380, 382, 383, 384, 385, 388, + 391, 393, 395, 397, 398, 399, 400, 401, 402, 404, + 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, + 417, 419, 420, 421, 424, 427, 429, 431, 432, 434, + 435, 437, 438, 442, 444, 445, 446, 448, 449, 451, + 452, 453, 454, 455, 456, 458, 459, 461, 463, 464, + 465, 467, 468, 469, 470, 472, 475, 478, 480, 482, + 484, 485, 486, 488, 489, 490, 491, 492, 493, 495, + + 496, 497, 498, 499, 501, 504, 507, 509, 511, 512, + 513, 514, 515, 517, 518, 520, 521, 522, 523, 524, + 525, 527, 528, 529, 530, 531, 533, 534, 536, 537, + 539, 540, 541, 543, 544, 546, 547, 549, 550, 552, + 554, 555, 557, 558, 559, 561, 562, 564, 565, 567, + 569, 571, 572, 574, 576, 576 } ; -static yyconst flex_int32_t yy_ec[256] = +static yyconst YY_CHAR yy_ec[256] = { 0, 1, 1, 1, 1, 1, 1, 1, 1, 2, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, @@ -513,7 +498,7 @@ static yyconst flex_int32_t yy_ec[256] = 1, 1, 1, 1, 1 } ; -static yyconst flex_int32_t yy_meta[35] = +static yyconst YY_CHAR yy_meta[35] = { 0, 1, 1, 2, 3, 1, 1, 1, 1, 4, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, @@ -521,216 +506,217 @@ static yyconst flex_int32_t yy_meta[35] = 1, 1, 1, 1 } ; -static yyconst flex_int16_t yy_base[424] = +static yyconst flex_uint16_t yy_base[425] = { 0, - 0, 0, 901, 900, 902, 897, 33, 36, 905, 905, - 45, 63, 31, 42, 51, 52, 890, 33, 65, 67, - 69, 70, 889, 71, 888, 75, 0, 905, 893, 905, - 91, 94, 0, 0, 103, 886, 112, 0, 89, 98, - 113, 92, 114, 99, 100, 48, 121, 116, 119, 74, - 124, 129, 123, 135, 132, 133, 137, 134, 138, 139, - 141, 0, 155, 0, 0, 164, 0, 0, 849, 142, - 152, 164, 140, 161, 165, 166, 167, 168, 169, 173, - 174, 178, 176, 180, 184, 208, 189, 183, 192, 195, - 215, 191, 193, 223, 0, 0, 905, 208, 204, 236, - - 219, 209, 238, 196, 237, 831, 242, 815, 241, 224, - 243, 261, 244, 259, 277, 266, 286, 250, 288, 298, - 249, 283, 274, 282, 294, 308, 0, 310, 0, 295, - 305, 905, 308, 306, 313, 314, 342, 319, 316, 320, - 331, 0, 349, 0, 342, 344, 356, 0, 358, 0, - 365, 0, 367, 0, 354, 375, 0, 377, 0, 363, - 356, 809, 327, 322, 384, 0, 0, 0, 0, 379, - 905, 382, 384, 386, 390, 372, 392, 403, 0, 410, - 0, 407, 413, 423, 426, 0, 0, 0, 0, 409, - 424, 435, 0, 0, 0, 0, 437, 0, 0, 0, - - 0, 433, 444, 0, 0, 0, 0, 391, 440, 781, - 905, 769, 439, 445, 444, 447, 449, 454, 453, 399, - 464, 0, 0, 0, 0, 757, 465, 476, 0, 478, - 0, 479, 476, 753, 462, 490, 749, 905, 745, 905, - 483, 737, 424, 485, 487, 490, 500, 493, 905, 729, - 905, 502, 518, 0, 0, 0, 0, 905, 498, 721, - 905, 527, 713, 0, 705, 905, 495, 697, 905, 365, - 521, 528, 530, 685, 905, 534, 540, 540, 657, 905, - 537, 542, 650, 905, 553, 0, 557, 0, 0, 551, - 641, 905, 558, 557, 633, 614, 613, 905, 547, 555, - - 563, 565, 569, 584, 0, 0, 0, 0, 583, 570, - 585, 612, 905, 601, 905, 522, 580, 589, 594, 905, - 600, 585, 563, 520, 905, 514, 905, 586, 486, 597, - 480, 441, 905, 416, 905, 345, 905, 334, 905, 601, - 254, 905, 242, 905, 200, 905, 151, 905, 905, 607, - 86, 905, 905, 905, 620, 624, 627, 631, 635, 639, - 643, 647, 651, 655, 659, 663, 667, 671, 675, 679, - 683, 687, 691, 695, 699, 703, 707, 711, 715, 719, - 723, 727, 731, 735, 739, 743, 747, 751, 755, 759, - 763, 767, 771, 775, 779, 783, 787, 791, 795, 799, - - 803, 807, 811, 815, 819, 823, 827, 831, 835, 839, - 843, 847, 851, 855, 859, 863, 867, 871, 875, 879, - 883, 887, 891 + 0, 0, 904, 903, 905, 900, 33, 36, 908, 908, + 45, 63, 31, 42, 51, 52, 893, 33, 65, 67, + 69, 70, 892, 71, 891, 75, 0, 908, 896, 908, + 91, 94, 0, 0, 103, 889, 112, 0, 89, 98, + 113, 92, 114, 99, 100, 48, 121, 116, 119, 77, + 124, 129, 123, 135, 132, 133, 134, 138, 140, 144, + 139, 142, 0, 155, 0, 0, 159, 0, 0, 894, + 146, 155, 164, 141, 165, 166, 167, 168, 169, 170, + 174, 175, 181, 176, 177, 185, 205, 191, 190, 194, + 193, 213, 200, 202, 221, 0, 0, 908, 209, 205, + + 237, 217, 222, 224, 225, 237, 887, 240, 886, 241, + 233, 242, 263, 245, 261, 279, 246, 288, 251, 267, + 297, 252, 293, 276, 284, 294, 306, 0, 310, 0, + 301, 312, 908, 313, 307, 308, 268, 338, 319, 310, + 313, 341, 0, 348, 0, 341, 343, 355, 0, 357, + 0, 364, 0, 366, 0, 353, 374, 0, 376, 0, + 321, 355, 849, 325, 371, 383, 0, 0, 0, 0, + 378, 908, 377, 381, 383, 387, 393, 389, 405, 0, + 408, 0, 406, 408, 418, 421, 0, 0, 0, 0, + 416, 419, 430, 0, 0, 0, 0, 432, 0, 0, + + 0, 0, 428, 439, 0, 0, 0, 0, 434, 436, + 837, 908, 821, 437, 442, 443, 445, 447, 452, 451, + 396, 463, 0, 0, 0, 0, 809, 463, 474, 0, + 476, 0, 477, 474, 781, 364, 488, 769, 908, 757, + 908, 481, 753, 472, 483, 485, 488, 498, 491, 908, + 749, 908, 500, 516, 0, 0, 0, 0, 908, 496, + 745, 908, 525, 737, 0, 729, 908, 509, 721, 908, + 506, 523, 529, 531, 713, 908, 535, 528, 540, 705, + 908, 542, 544, 697, 908, 555, 0, 557, 0, 0, + 555, 685, 908, 537, 550, 657, 650, 641, 908, 443, + + 545, 559, 564, 570, 577, 0, 0, 0, 0, 576, + 581, 583, 633, 908, 614, 908, 574, 589, 587, 592, + 908, 613, 612, 602, 599, 908, 598, 908, 590, 565, + 595, 561, 520, 908, 501, 908, 484, 908, 461, 908, + 601, 449, 908, 400, 908, 332, 908, 324, 908, 908, + 607, 188, 908, 908, 908, 620, 624, 627, 631, 635, + 639, 643, 647, 651, 655, 659, 663, 667, 671, 675, + 679, 683, 687, 691, 695, 699, 703, 707, 711, 715, + 719, 723, 727, 731, 735, 739, 743, 747, 751, 755, + 759, 763, 767, 771, 775, 779, 783, 787, 791, 795, + + 799, 803, 807, 811, 815, 819, 823, 827, 831, 835, + 839, 843, 847, 851, 855, 859, 863, 867, 871, 875, + 879, 883, 887, 891 } ; -static yyconst flex_int16_t yy_def[424] = +static yyconst flex_int16_t yy_def[425] = { 0, - 354, 1, 355, 355, 354, 356, 357, 357, 354, 354, - 358, 358, 12, 12, 12, 12, 12, 12, 12, 12, - 12, 12, 12, 12, 12, 12, 359, 354, 356, 354, - 360, 357, 361, 361, 362, 12, 356, 363, 12, 12, + 355, 1, 356, 356, 355, 357, 358, 358, 355, 355, + 359, 359, 12, 12, 12, 12, 12, 12, 12, 12, + 12, 12, 12, 12, 12, 12, 360, 355, 357, 355, + 361, 358, 362, 362, 363, 12, 357, 364, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, - 12, 359, 360, 361, 361, 364, 365, 365, 354, 12, - 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, - 12, 12, 12, 12, 12, 362, 12, 12, 12, 12, - 12, 12, 12, 364, 365, 365, 354, 12, 12, 366, - + 12, 12, 360, 361, 362, 362, 365, 366, 366, 355, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, - 12, 367, 86, 86, 368, 12, 369, 12, 12, 370, - 12, 12, 12, 12, 12, 371, 372, 366, 372, 12, - 12, 354, 86, 12, 12, 12, 373, 12, 12, 12, - 374, 375, 367, 375, 86, 86, 376, 377, 368, 377, - 378, 379, 369, 379, 12, 380, 381, 370, 381, 12, - 12, 382, 12, 12, 371, 372, 372, 383, 383, 12, - 354, 86, 86, 86, 12, 12, 12, 384, 385, 373, - 385, 12, 12, 386, 374, 375, 375, 387, 387, 86, - 86, 376, 377, 377, 388, 388, 378, 379, 379, 389, - - 389, 12, 380, 381, 381, 390, 390, 12, 12, 391, - 354, 392, 86, 12, 86, 86, 86, 12, 86, 12, - 384, 385, 385, 393, 393, 394, 86, 395, 396, 386, - 396, 86, 86, 397, 12, 398, 391, 354, 399, 354, - 86, 400, 12, 86, 86, 86, 401, 86, 354, 402, - 354, 86, 395, 396, 396, 403, 403, 354, 86, 404, - 354, 405, 406, 406, 399, 354, 86, 407, 354, 12, - 86, 86, 86, 408, 354, 408, 408, 86, 402, 354, - 86, 86, 404, 354, 409, 410, 405, 410, 406, 86, - 407, 354, 12, 86, 411, 412, 408, 354, 408, 408, - - 86, 86, 86, 409, 410, 410, 413, 413, 86, 12, - 86, 414, 354, 415, 354, 408, 408, 86, 86, 354, - 416, 417, 418, 414, 354, 415, 354, 408, 408, 86, - 419, 420, 354, 421, 354, 422, 354, 408, 354, 86, - 423, 354, 420, 354, 421, 354, 422, 354, 354, 86, - 423, 354, 354, 0, 354, 354, 354, 354, 354, 354, - 354, 354, 354, 354, 354, 354, 354, 354, 354, 354, - 354, 354, 354, 354, 354, 354, 354, 354, 354, 354, - 354, 354, 354, 354, 354, 354, 354, 354, 354, 354, - 354, 354, 354, 354, 354, 354, 354, 354, 354, 354, - - 354, 354, 354, 354, 354, 354, 354, 354, 354, 354, - 354, 354, 354, 354, 354, 354, 354, 354, 354, 354, - 354, 354, 354 + 12, 12, 12, 12, 12, 12, 363, 12, 12, 12, + 12, 12, 12, 12, 365, 366, 366, 355, 12, 12, + + 367, 12, 12, 12, 12, 12, 12, 12, 12, 12, + 12, 12, 368, 87, 87, 369, 12, 370, 12, 12, + 371, 12, 12, 12, 12, 12, 372, 373, 367, 373, + 12, 12, 355, 87, 12, 12, 12, 374, 12, 12, + 12, 375, 376, 368, 376, 87, 87, 377, 378, 369, + 378, 379, 380, 370, 380, 12, 381, 382, 371, 382, + 12, 12, 383, 12, 12, 372, 373, 373, 384, 384, + 12, 355, 87, 87, 87, 12, 12, 12, 385, 386, + 374, 386, 12, 12, 387, 375, 376, 376, 388, 388, + 87, 87, 377, 378, 378, 389, 389, 379, 380, 380, + + 390, 390, 12, 381, 382, 382, 391, 391, 12, 12, + 392, 355, 393, 87, 12, 87, 87, 87, 12, 87, + 12, 385, 386, 386, 394, 394, 395, 87, 396, 397, + 387, 397, 87, 87, 398, 12, 399, 392, 355, 400, + 355, 87, 401, 12, 87, 87, 87, 402, 87, 355, + 403, 355, 87, 396, 397, 397, 404, 404, 355, 87, + 405, 355, 406, 407, 407, 400, 355, 87, 408, 355, + 12, 87, 87, 87, 409, 355, 409, 409, 87, 403, + 355, 87, 87, 405, 355, 410, 411, 406, 411, 407, + 87, 408, 355, 12, 87, 412, 413, 409, 355, 409, + + 409, 87, 87, 87, 410, 411, 411, 414, 414, 87, + 12, 87, 415, 355, 416, 355, 409, 409, 87, 87, + 355, 417, 418, 419, 415, 355, 416, 355, 409, 409, + 87, 420, 421, 355, 422, 355, 423, 355, 409, 355, + 87, 424, 355, 421, 355, 422, 355, 423, 355, 355, + 87, 424, 355, 355, 0, 355, 355, 355, 355, 355, + 355, 355, 355, 355, 355, 355, 355, 355, 355, 355, + 355, 355, 355, 355, 355, 355, 355, 355, 355, 355, + 355, 355, 355, 355, 355, 355, 355, 355, 355, 355, + 355, 355, 355, 355, 355, 355, 355, 355, 355, 355, + + 355, 355, 355, 355, 355, 355, 355, 355, 355, 355, + 355, 355, 355, 355, 355, 355, 355, 355, 355, 355, + 355, 355, 355, 355 } ; -static yyconst flex_int16_t yy_nxt[940] = +static yyconst flex_uint16_t yy_nxt[943] = { 0, 6, 7, 8, 9, 6, 6, 6, 6, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 17, 17, 17, 17, 20, 17, 21, 22, 23, 24, 25, 17, 26, 17, 17, 17, 32, 32, 33, 32, 32, 33, 36, 34, 36, 42, 34, 29, 29, 29, 30, 35, - 50, 36, 37, 38, 43, 44, 39, 36, 79, 45, + 50, 36, 37, 38, 43, 44, 39, 36, 80, 45, 36, 36, 40, 29, 29, 29, 30, 35, 46, 48, 37, 38, 41, 47, 36, 49, 36, 53, 36, 36, - 36, 56, 58, 36, 36, 55, 82, 60, 51, 342, - 54, 61, 52, 29, 64, 32, 32, 33, 36, 65, - - 70, 36, 34, 29, 29, 29, 30, 36, 36, 36, - 29, 38, 66, 66, 66, 67, 66, 71, 74, 66, - 68, 72, 36, 36, 73, 36, 77, 78, 36, 76, - 36, 53, 36, 36, 75, 85, 80, 83, 36, 86, - 84, 36, 36, 36, 36, 81, 36, 36, 36, 36, - 36, 36, 93, 89, 337, 98, 88, 29, 64, 101, - 90, 36, 91, 65, 92, 87, 29, 95, 89, 99, - 36, 100, 96, 36, 36, 36, 36, 36, 36, 106, - 105, 85, 36, 36, 102, 36, 107, 36, 103, 36, - 109, 112, 36, 36, 104, 108, 115, 110, 36, 117, - - 36, 36, 36, 335, 36, 36, 122, 111, 29, 29, - 29, 30, 118, 36, 116, 29, 38, 36, 36, 113, - 114, 119, 120, 123, 36, 29, 95, 121, 36, 134, - 131, 96, 130, 36, 125, 124, 126, 126, 66, 127, - 126, 132, 133, 126, 129, 333, 36, 36, 135, 137, - 36, 36, 36, 140, 139, 35, 35, 352, 36, 36, - 85, 141, 141, 66, 142, 141, 160, 145, 141, 144, - 35, 35, 89, 117, 155, 36, 146, 147, 147, 66, - 148, 147, 162, 36, 147, 150, 151, 151, 66, 152, - 151, 36, 36, 151, 154, 120, 161, 36, 156, 156, - - 66, 157, 156, 36, 36, 156, 159, 164, 171, 163, - 29, 166, 29, 168, 36, 36, 167, 170, 169, 35, - 35, 172, 36, 36, 173, 36, 213, 184, 36, 36, - 175, 36, 174, 29, 186, 212, 36, 349, 183, 187, - 177, 176, 178, 178, 66, 179, 178, 182, 348, 178, - 181, 29, 188, 35, 35, 35, 35, 189, 29, 193, - 29, 195, 190, 36, 194, 36, 196, 29, 198, 29, - 200, 191, 36, 199, 36, 201, 219, 29, 204, 29, - 206, 36, 202, 205, 209, 207, 29, 166, 36, 293, - 208, 214, 167, 35, 35, 35, 35, 35, 35, 36, - - 36, 36, 249, 218, 220, 29, 222, 216, 36, 217, - 235, 223, 29, 224, 215, 226, 36, 227, 225, 346, - 35, 35, 36, 228, 228, 66, 229, 228, 29, 186, - 228, 231, 232, 36, 187, 233, 35, 29, 193, 29, - 198, 234, 36, 194, 344, 199, 29, 204, 236, 36, - 35, 241, 205, 242, 36, 35, 35, 270, 35, 35, - 35, 35, 247, 36, 35, 35, 29, 222, 244, 262, - 248, 36, 223, 243, 245, 246, 35, 252, 29, 254, - 29, 256, 258, 342, 255, 259, 257, 35, 35, 339, - 35, 35, 69, 264, 35, 35, 35, 35, 35, 35, - - 267, 35, 35, 275, 35, 35, 35, 35, 271, 35, - 35, 276, 277, 35, 35, 272, 278, 315, 273, 281, - 29, 254, 290, 313, 282, 275, 255, 285, 285, 66, - 286, 285, 35, 35, 285, 288, 295, 298, 296, 35, - 35, 35, 35, 298, 301, 328, 299, 294, 35, 35, - 275, 35, 35, 35, 303, 29, 305, 300, 275, 29, - 307, 306, 35, 35, 302, 308, 337, 36, 35, 35, - 309, 310, 320, 316, 35, 35, 35, 35, 322, 36, - 35, 35, 317, 275, 319, 311, 29, 305, 335, 275, - 318, 321, 306, 323, 35, 35, 35, 35, 330, 329, - - 35, 35, 331, 333, 327, 35, 35, 338, 35, 35, - 353, 340, 35, 35, 350, 325, 275, 315, 35, 35, + 36, 56, 59, 57, 36, 55, 36, 61, 51, 83, + 54, 62, 52, 29, 65, 32, 32, 33, 36, 66, + + 71, 36, 34, 29, 29, 29, 30, 36, 36, 36, + 29, 38, 67, 67, 67, 68, 67, 72, 75, 67, + 69, 73, 36, 36, 74, 36, 78, 79, 36, 77, + 36, 53, 36, 36, 76, 86, 81, 84, 36, 87, + 85, 36, 36, 36, 36, 82, 90, 36, 36, 36, + 36, 36, 94, 36, 90, 36, 89, 29, 65, 99, + 102, 29, 96, 66, 36, 88, 91, 97, 92, 90, + 93, 101, 100, 36, 36, 36, 36, 36, 36, 36, + 107, 106, 86, 36, 36, 36, 36, 108, 103, 104, + 36, 343, 113, 110, 36, 105, 109, 111, 116, 36, + + 36, 118, 36, 36, 112, 29, 29, 29, 30, 36, + 119, 36, 29, 38, 36, 123, 114, 115, 36, 120, + 121, 117, 36, 29, 96, 122, 36, 133, 134, 97, + 131, 36, 124, 36, 36, 126, 125, 127, 127, 67, + 128, 127, 36, 132, 127, 130, 36, 138, 136, 36, + 36, 36, 90, 118, 140, 36, 35, 35, 135, 86, + 36, 36, 141, 142, 142, 67, 143, 142, 146, 161, + 142, 145, 35, 35, 121, 156, 36, 36, 147, 148, + 148, 67, 149, 148, 163, 36, 148, 151, 152, 152, + 67, 153, 152, 36, 178, 152, 155, 157, 157, 67, + + 158, 157, 36, 36, 157, 160, 162, 165, 29, 167, + 36, 164, 29, 169, 168, 172, 36, 36, 170, 36, + 185, 36, 36, 171, 35, 35, 173, 338, 36, 174, + 36, 176, 184, 213, 36, 336, 177, 175, 179, 179, + 67, 180, 179, 29, 187, 179, 182, 183, 209, 188, + 29, 189, 35, 35, 35, 35, 190, 29, 194, 29, + 196, 191, 36, 195, 36, 197, 29, 199, 29, 201, + 192, 263, 200, 36, 202, 214, 29, 205, 29, 207, + 36, 203, 206, 210, 208, 29, 167, 36, 35, 35, + 215, 168, 35, 35, 35, 35, 36, 220, 36, 250, + + 219, 221, 36, 334, 217, 36, 218, 29, 223, 216, + 29, 225, 228, 224, 227, 36, 226, 36, 229, 229, + 67, 230, 229, 29, 187, 229, 232, 35, 35, 188, + 234, 35, 29, 194, 29, 199, 235, 36, 195, 233, + 200, 29, 205, 36, 237, 36, 276, 206, 35, 242, + 243, 36, 353, 236, 35, 35, 35, 35, 35, 35, + 248, 36, 35, 35, 350, 29, 223, 245, 249, 317, + 244, 224, 246, 247, 35, 253, 29, 255, 29, 257, + 259, 36, 256, 260, 258, 35, 35, 349, 35, 35, + 70, 265, 35, 35, 35, 35, 35, 35, 268, 35, + + 35, 276, 35, 35, 347, 271, 272, 35, 35, 277, + 278, 35, 35, 273, 279, 36, 274, 282, 29, 255, + 35, 35, 283, 345, 256, 286, 286, 67, 287, 286, + 294, 299, 286, 289, 35, 35, 291, 296, 299, 297, + 35, 35, 35, 35, 302, 301, 36, 300, 276, 295, + 311, 35, 35, 35, 35, 35, 304, 29, 306, 29, + 308, 35, 35, 307, 343, 309, 35, 35, 340, 303, + 35, 35, 318, 321, 310, 35, 35, 276, 312, 29, + 306, 35, 35, 320, 322, 307, 319, 35, 35, 323, + 36, 324, 276, 276, 35, 35, 331, 329, 35, 35, + + 332, 316, 314, 35, 35, 338, 35, 35, 330, 341, + 354, 339, 35, 35, 351, 336, 334, 328, 35, 35, 27, 27, 27, 27, 29, 29, 29, 31, 31, 31, - 31, 36, 36, 36, 36, 62, 313, 62, 62, 63, - 63, 63, 63, 65, 269, 65, 65, 35, 35, 35, - 35, 69, 69, 261, 69, 94, 94, 94, 94, 96, - 251, 96, 96, 128, 128, 128, 128, 143, 143, 143, - 143, 149, 149, 149, 149, 153, 153, 153, 153, 158, - 158, 158, 158, 165, 165, 165, 165, 167, 298, 167, - 167, 180, 180, 180, 180, 185, 185, 185, 185, 187, - - 292, 187, 187, 192, 192, 192, 192, 194, 240, 194, - 194, 197, 197, 197, 197, 199, 289, 199, 199, 203, - 203, 203, 203, 205, 284, 205, 205, 210, 210, 210, - 210, 169, 280, 169, 169, 221, 221, 221, 221, 223, - 269, 223, 223, 230, 230, 230, 230, 189, 266, 189, - 189, 196, 211, 196, 196, 201, 261, 201, 201, 207, - 251, 207, 207, 237, 237, 237, 237, 239, 239, 239, - 239, 225, 240, 225, 225, 250, 250, 250, 250, 253, - 253, 253, 253, 255, 238, 255, 255, 260, 260, 260, - 260, 263, 263, 263, 263, 265, 265, 265, 265, 268, - - 268, 268, 268, 274, 274, 274, 274, 279, 279, 279, - 279, 257, 211, 257, 257, 283, 283, 283, 283, 287, - 287, 287, 287, 264, 138, 264, 264, 291, 291, 291, - 291, 297, 297, 297, 297, 304, 304, 304, 304, 306, - 136, 306, 306, 312, 312, 312, 312, 314, 314, 314, - 314, 308, 97, 308, 308, 324, 324, 324, 324, 326, - 326, 326, 326, 332, 332, 332, 332, 334, 334, 334, - 334, 336, 336, 336, 336, 341, 341, 341, 341, 343, - 343, 343, 343, 345, 345, 345, 345, 347, 347, 347, - 347, 351, 351, 351, 351, 36, 30, 59, 57, 36, - - 30, 354, 28, 28, 5, 354, 354, 354, 354, 354, - 354, 354, 354, 354, 354, 354, 354, 354, 354, 354, - 354, 354, 354, 354, 354, 354, 354, 354, 354, 354, - 354, 354, 354, 354, 354, 354, 354, 354, 354 + 31, 36, 36, 36, 36, 63, 326, 63, 63, 64, + 64, 64, 64, 66, 276, 66, 66, 35, 35, 35, + 35, 70, 70, 316, 70, 95, 95, 95, 95, 97, + 314, 97, 97, 129, 129, 129, 129, 144, 144, 144, + 144, 150, 150, 150, 150, 154, 154, 154, 154, 159, + 159, 159, 159, 166, 166, 166, 166, 168, 270, 168, + 168, 181, 181, 181, 181, 186, 186, 186, 186, 188, + + 262, 188, 188, 193, 193, 193, 193, 195, 252, 195, + 195, 198, 198, 198, 198, 200, 299, 200, 200, 204, + 204, 204, 204, 206, 293, 206, 206, 211, 211, 211, + 211, 170, 241, 170, 170, 222, 222, 222, 222, 224, + 290, 224, 224, 231, 231, 231, 231, 190, 285, 190, + 190, 197, 281, 197, 197, 202, 270, 202, 202, 208, + 267, 208, 208, 238, 238, 238, 238, 240, 240, 240, + 240, 226, 212, 226, 226, 251, 251, 251, 251, 254, + 254, 254, 254, 256, 262, 256, 256, 261, 261, 261, + 261, 264, 264, 264, 264, 266, 266, 266, 266, 269, + + 269, 269, 269, 275, 275, 275, 275, 280, 280, 280, + 280, 258, 252, 258, 258, 284, 284, 284, 284, 288, + 288, 288, 288, 265, 241, 265, 265, 292, 292, 292, + 292, 298, 298, 298, 298, 305, 305, 305, 305, 307, + 239, 307, 307, 313, 313, 313, 313, 315, 315, 315, + 315, 309, 212, 309, 309, 325, 325, 325, 325, 327, + 327, 327, 327, 333, 333, 333, 333, 335, 335, 335, + 335, 337, 337, 337, 337, 342, 342, 342, 342, 344, + 344, 344, 344, 346, 346, 346, 346, 348, 348, 348, + 348, 352, 352, 352, 352, 139, 137, 98, 36, 30, + + 60, 58, 36, 30, 355, 28, 28, 5, 355, 355, + 355, 355, 355, 355, 355, 355, 355, 355, 355, 355, + 355, 355, 355, 355, 355, 355, 355, 355, 355, 355, + 355, 355, 355, 355, 355, 355, 355, 355, 355, 355, + 355, 355 } ; -static yyconst flex_int16_t yy_chk[940] = +static yyconst flex_int16_t yy_chk[943] = { 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, @@ -740,101 +726,102 @@ static yyconst flex_int16_t yy_chk[940] = 18, 14, 11, 11, 13, 14, 11, 46, 46, 14, 15, 16, 11, 12, 12, 12, 12, 12, 14, 16, 12, 12, 12, 15, 19, 16, 20, 20, 21, 22, - 24, 22, 24, 50, 26, 21, 50, 26, 19, 351, + 24, 22, 24, 22, 26, 21, 50, 26, 19, 50, 20, 26, 19, 31, 31, 32, 32, 32, 39, 31, 39, 42, 32, 35, 35, 35, 35, 40, 44, 45, 35, 35, 37, 37, 37, 37, 37, 39, 42, 37, 37, 40, 41, 43, 41, 48, 45, 45, 49, 44, 47, 47, 53, 51, 43, 53, 48, 51, 52, 54, - 52, 55, 56, 58, 54, 49, 57, 59, 60, 73, - 61, 70, 60, 61, 347, 70, 56, 63, 63, 73, - 58, 71, 59, 63, 59, 55, 66, 66, 57, 71, - 74, 72, 66, 72, 75, 76, 77, 78, 79, 78, - 77, 79, 80, 81, 74, 83, 80, 82, 75, 84, - 82, 85, 88, 85, 76, 81, 87, 83, 87, 89, - - 92, 89, 93, 345, 90, 104, 92, 84, 86, 86, - 86, 86, 90, 99, 88, 86, 86, 98, 102, 86, - 86, 91, 91, 93, 91, 94, 94, 91, 101, 104, - 102, 94, 101, 110, 99, 98, 100, 100, 100, 100, - 100, 103, 103, 100, 100, 343, 105, 103, 105, 107, - 109, 107, 111, 110, 109, 113, 113, 341, 121, 118, - 111, 112, 112, 112, 112, 112, 121, 113, 112, 112, - 114, 114, 116, 116, 118, 116, 114, 115, 115, 115, - 115, 115, 123, 123, 115, 115, 117, 117, 117, 117, - 117, 124, 122, 117, 117, 119, 122, 119, 120, 120, - - 120, 120, 120, 125, 130, 120, 120, 125, 131, 124, - 126, 126, 128, 128, 131, 134, 126, 130, 128, 133, - 133, 133, 135, 136, 133, 139, 164, 140, 138, 140, - 134, 164, 133, 141, 141, 163, 163, 338, 139, 141, - 136, 135, 137, 137, 137, 137, 137, 138, 336, 137, - 137, 143, 143, 145, 145, 146, 146, 143, 147, 147, - 149, 149, 145, 155, 147, 161, 149, 151, 151, 153, - 153, 146, 160, 151, 270, 153, 176, 156, 156, 158, - 158, 176, 155, 156, 161, 158, 165, 165, 170, 270, - 160, 170, 165, 172, 172, 173, 173, 174, 174, 175, - - 208, 177, 220, 175, 177, 178, 178, 173, 220, 174, - 208, 178, 180, 180, 172, 182, 182, 183, 180, 334, - 190, 190, 183, 184, 184, 184, 184, 184, 185, 185, - 184, 184, 190, 243, 185, 191, 191, 192, 192, 197, - 197, 202, 202, 192, 332, 197, 203, 203, 209, 209, - 213, 213, 203, 214, 214, 215, 215, 243, 216, 216, - 217, 217, 218, 218, 219, 219, 221, 221, 215, 235, - 219, 235, 221, 214, 216, 217, 227, 227, 228, 228, - 230, 230, 232, 331, 228, 233, 230, 233, 233, 329, - 232, 232, 236, 236, 241, 241, 244, 244, 245, 245, - - 241, 246, 246, 247, 248, 248, 267, 267, 244, 259, - 259, 247, 247, 252, 252, 245, 248, 326, 246, 252, - 253, 253, 267, 324, 259, 316, 253, 262, 262, 262, - 262, 262, 271, 271, 262, 262, 272, 276, 273, 272, - 272, 273, 273, 277, 278, 316, 276, 271, 281, 281, - 299, 278, 278, 282, 282, 285, 285, 277, 300, 287, - 287, 285, 290, 290, 281, 287, 323, 293, 294, 294, - 290, 293, 303, 299, 301, 301, 302, 302, 310, 310, - 303, 303, 300, 317, 302, 294, 304, 304, 322, 328, - 301, 309, 304, 311, 309, 309, 311, 311, 318, 317, - - 318, 318, 319, 321, 314, 319, 319, 328, 330, 330, - 350, 330, 340, 340, 340, 312, 297, 296, 350, 350, - 355, 355, 355, 355, 356, 356, 356, 357, 357, 357, - 357, 358, 358, 358, 358, 359, 295, 359, 359, 360, - 360, 360, 360, 361, 291, 361, 361, 362, 362, 362, - 362, 363, 363, 283, 363, 364, 364, 364, 364, 365, - 279, 365, 365, 366, 366, 366, 366, 367, 367, 367, - 367, 368, 368, 368, 368, 369, 369, 369, 369, 370, - 370, 370, 370, 371, 371, 371, 371, 372, 274, 372, - 372, 373, 373, 373, 373, 374, 374, 374, 374, 375, - - 268, 375, 375, 376, 376, 376, 376, 377, 265, 377, - 377, 378, 378, 378, 378, 379, 263, 379, 379, 380, - 380, 380, 380, 381, 260, 381, 381, 382, 382, 382, - 382, 383, 250, 383, 383, 384, 384, 384, 384, 385, - 242, 385, 385, 386, 386, 386, 386, 387, 239, 387, - 387, 388, 237, 388, 388, 389, 234, 389, 389, 390, - 226, 390, 390, 391, 391, 391, 391, 392, 392, 392, - 392, 393, 212, 393, 393, 394, 394, 394, 394, 395, - 395, 395, 395, 396, 210, 396, 396, 397, 397, 397, - 397, 398, 398, 398, 398, 399, 399, 399, 399, 400, - - 400, 400, 400, 401, 401, 401, 401, 402, 402, 402, - 402, 403, 162, 403, 403, 404, 404, 404, 404, 405, - 405, 405, 405, 406, 108, 406, 406, 407, 407, 407, - 407, 408, 408, 408, 408, 409, 409, 409, 409, 410, - 106, 410, 410, 411, 411, 411, 411, 412, 412, 412, - 412, 413, 69, 413, 413, 414, 414, 414, 414, 415, - 415, 415, 415, 416, 416, 416, 416, 417, 417, 417, - 417, 418, 418, 418, 418, 419, 419, 419, 419, 420, - 420, 420, 420, 421, 421, 421, 421, 422, 422, 422, - 422, 423, 423, 423, 423, 36, 29, 25, 23, 17, - - 6, 5, 4, 3, 354, 354, 354, 354, 354, 354, - 354, 354, 354, 354, 354, 354, 354, 354, 354, 354, - 354, 354, 354, 354, 354, 354, 354, 354, 354, 354, - 354, 354, 354, 354, 354, 354, 354, 354, 354 + 52, 55, 56, 57, 54, 49, 57, 58, 61, 59, + 74, 62, 61, 60, 62, 71, 56, 64, 64, 71, + 74, 67, 67, 64, 72, 55, 59, 67, 60, 58, + 60, 73, 72, 73, 75, 76, 77, 78, 79, 80, + 79, 78, 80, 81, 82, 84, 85, 81, 75, 76, + 83, 352, 86, 83, 86, 77, 82, 84, 88, 89, + + 88, 90, 91, 90, 85, 87, 87, 87, 87, 93, + 91, 94, 87, 87, 100, 93, 87, 87, 99, 92, + 92, 89, 92, 95, 95, 92, 102, 104, 104, 95, + 102, 103, 94, 104, 105, 100, 99, 101, 101, 101, + 101, 101, 111, 103, 101, 101, 106, 108, 106, 108, + 110, 112, 117, 117, 110, 117, 114, 114, 105, 112, + 119, 122, 111, 113, 113, 113, 113, 113, 114, 122, + 113, 113, 115, 115, 120, 119, 120, 137, 115, 116, + 116, 116, 116, 116, 124, 124, 116, 116, 118, 118, + 118, 118, 118, 125, 137, 118, 118, 121, 121, 121, + + 121, 121, 123, 126, 121, 121, 123, 126, 127, 127, + 131, 125, 129, 129, 127, 132, 135, 136, 129, 140, + 141, 132, 141, 131, 134, 134, 134, 348, 139, 134, + 161, 135, 140, 164, 164, 346, 136, 134, 138, 138, + 138, 138, 138, 142, 142, 138, 138, 139, 161, 142, + 144, 144, 146, 146, 147, 147, 144, 148, 148, 150, + 150, 146, 156, 148, 162, 150, 152, 152, 154, 154, + 147, 236, 152, 236, 154, 165, 157, 157, 159, 159, + 165, 156, 157, 162, 159, 166, 166, 171, 173, 173, + 171, 166, 174, 174, 175, 175, 176, 177, 178, 221, + + 176, 178, 177, 344, 174, 221, 175, 179, 179, 173, + 181, 181, 184, 179, 183, 183, 181, 184, 185, 185, + 185, 185, 185, 186, 186, 185, 185, 191, 191, 186, + 192, 192, 193, 193, 198, 198, 203, 203, 193, 191, + 198, 204, 204, 209, 210, 210, 300, 204, 214, 214, + 215, 215, 342, 209, 216, 216, 217, 217, 218, 218, + 219, 219, 220, 220, 339, 222, 222, 216, 220, 300, + 215, 222, 217, 218, 228, 228, 229, 229, 231, 231, + 233, 244, 229, 234, 231, 234, 234, 337, 233, 233, + 237, 237, 242, 242, 245, 245, 246, 246, 242, 247, + + 247, 248, 249, 249, 335, 244, 245, 260, 260, 248, + 248, 253, 253, 246, 249, 271, 247, 253, 254, 254, + 268, 268, 260, 333, 254, 263, 263, 263, 263, 263, + 271, 278, 263, 263, 272, 272, 268, 273, 277, 274, + 273, 273, 274, 274, 279, 278, 294, 277, 301, 272, + 294, 279, 279, 282, 282, 283, 283, 286, 286, 288, + 288, 295, 295, 286, 332, 288, 291, 291, 330, 282, + 302, 302, 301, 304, 291, 303, 303, 317, 295, 305, + 305, 304, 304, 303, 310, 305, 302, 310, 310, 311, + 311, 312, 318, 329, 312, 312, 319, 317, 319, 319, + + 320, 327, 325, 320, 320, 324, 331, 331, 318, 331, + 351, 329, 341, 341, 341, 323, 322, 315, 351, 351, + 356, 356, 356, 356, 357, 357, 357, 358, 358, 358, + 358, 359, 359, 359, 359, 360, 313, 360, 360, 361, + 361, 361, 361, 362, 298, 362, 362, 363, 363, 363, + 363, 364, 364, 297, 364, 365, 365, 365, 365, 366, + 296, 366, 366, 367, 367, 367, 367, 368, 368, 368, + 368, 369, 369, 369, 369, 370, 370, 370, 370, 371, + 371, 371, 371, 372, 372, 372, 372, 373, 292, 373, + 373, 374, 374, 374, 374, 375, 375, 375, 375, 376, + + 284, 376, 376, 377, 377, 377, 377, 378, 280, 378, + 378, 379, 379, 379, 379, 380, 275, 380, 380, 381, + 381, 381, 381, 382, 269, 382, 382, 383, 383, 383, + 383, 384, 266, 384, 384, 385, 385, 385, 385, 386, + 264, 386, 386, 387, 387, 387, 387, 388, 261, 388, + 388, 389, 251, 389, 389, 390, 243, 390, 390, 391, + 240, 391, 391, 392, 392, 392, 392, 393, 393, 393, + 393, 394, 238, 394, 394, 395, 395, 395, 395, 396, + 396, 396, 396, 397, 235, 397, 397, 398, 398, 398, + 398, 399, 399, 399, 399, 400, 400, 400, 400, 401, + + 401, 401, 401, 402, 402, 402, 402, 403, 403, 403, + 403, 404, 227, 404, 404, 405, 405, 405, 405, 406, + 406, 406, 406, 407, 213, 407, 407, 408, 408, 408, + 408, 409, 409, 409, 409, 410, 410, 410, 410, 411, + 211, 411, 411, 412, 412, 412, 412, 413, 413, 413, + 413, 414, 163, 414, 414, 415, 415, 415, 415, 416, + 416, 416, 416, 417, 417, 417, 417, 418, 418, 418, + 418, 419, 419, 419, 419, 420, 420, 420, 420, 421, + 421, 421, 421, 422, 422, 422, 422, 423, 423, 423, + 423, 424, 424, 424, 424, 109, 107, 70, 36, 29, + + 25, 23, 17, 6, 5, 4, 3, 355, 355, 355, + 355, 355, 355, 355, 355, 355, 355, 355, 355, 355, + 355, 355, 355, 355, 355, 355, 355, 355, 355, 355, + 355, 355, 355, 355, 355, 355, 355, 355, 355, 355, + 355, 355 } ; #define YY_TRAILING_MASK 0x2000 @@ -953,6 +940,7 @@ static void setformat(DiskParseContext *dpc, const char *str) { else if (!strcmp(str,"qcow2")) DSET(dpc,format,FORMAT,str,QCOW2); else if (!strcmp(str,"vhd")) DSET(dpc,format,FORMAT,str,VHD); else if (!strcmp(str,"empty")) DSET(dpc,format,FORMAT,str,EMPTY); + else if (!strcmp(str,"qed")) DSET(dpc,format,FORMAT,str,QED); else xlu__disk_err(dpc,str,"unknown value for format"); } @@ -1001,7 +989,7 @@ static int vdev_and_devtype(DiskParseContext *dpc, char *str) { #define DPC ((DiskParseContext*)yyextra) -#line 1005 "libxlu_disk_l.c" +#line 993 "libxlu_disk_l.c" #define INITIAL 0 #define LEXERR 1 @@ -1031,8 +1019,8 @@ struct yyguts_t size_t yy_buffer_stack_max; /**< capacity of stack. */ YY_BUFFER_STATE * yy_buffer_stack; /**< Stack as an array. */ char yy_hold_char; - yy_size_t yy_n_chars; - yy_size_t yyleng_r; + int yy_n_chars; + int yyleng_r; char *yy_c_buf_p; int yy_init; int yy_start; @@ -1084,23 +1072,23 @@ void xlu__disk_yyset_extra (YY_EXTRA_TYPE user_defined ,yyscan_t yyscanner ); FILE *xlu__disk_yyget_in (yyscan_t yyscanner ); -void xlu__disk_yyset_in (FILE * in_str ,yyscan_t yyscanner ); +void xlu__disk_yyset_in (FILE * _in_str ,yyscan_t yyscanner ); FILE *xlu__disk_yyget_out (yyscan_t yyscanner ); -void xlu__disk_yyset_out (FILE * out_str ,yyscan_t yyscanner ); +void xlu__disk_yyset_out (FILE * _out_str ,yyscan_t yyscanner ); -yy_size_t xlu__disk_yyget_leng (yyscan_t yyscanner ); + int xlu__disk_yyget_leng (yyscan_t yyscanner ); char *xlu__disk_yyget_text (yyscan_t yyscanner ); int xlu__disk_yyget_lineno (yyscan_t yyscanner ); -void xlu__disk_yyset_lineno (int line_number ,yyscan_t yyscanner ); +void xlu__disk_yyset_lineno (int _line_number ,yyscan_t yyscanner ); int xlu__disk_yyget_column (yyscan_t yyscanner ); -void xlu__disk_yyset_column (int column_no ,yyscan_t yyscanner ); +void xlu__disk_yyset_column (int _column_no ,yyscan_t yyscanner ); /* Macros after this point can all be overridden by user definitions in * section 1. @@ -1114,6 +1102,10 @@ extern int xlu__disk_yywrap (yyscan_t yyscanner ); #endif #endif +#ifndef YY_NO_UNPUT + +#endif + #ifndef yytext_ptr static void yy_flex_strncpy (char *,yyconst char *,int ,yyscan_t yyscanner); #endif @@ -1147,7 +1139,7 @@ static int input (yyscan_t yyscanner ); /* This used to be an fputs(), but since the string might contain NUL's, * we now use fwrite(). */ -#define ECHO do { if (fwrite( yytext, yyleng, 1, yyout )) {} } while (0) +#define ECHO do { if (fwrite( yytext, (size_t) yyleng, 1, yyout )) {} } while (0) #endif /* Gets input and stuffs it into "buf". number of characters read, or YY_NULL, @@ -1158,7 +1150,7 @@ static int input (yyscan_t yyscanner ); if ( YY_CURRENT_BUFFER_LVALUE->yy_is_interactive ) \ { \ int c = '*'; \ - int n; \ + size_t n; \ for ( n = 0; n < max_size && \ (c = getc( yyin )) != EOF && c != '\n'; ++n ) \ buf[n] = (char) c; \ @@ -1171,7 +1163,7 @@ static int input (yyscan_t yyscanner ); else \ { \ errno=0; \ - while ( (result = fread(buf, 1, (yy_size_t) max_size, yyin)) == 0 && ferror(yyin)) \ + while ( (result = (int) fread(buf, 1, max_size, yyin))==0 && ferror(yyin)) \ { \ if( errno != EINTR) \ { \ @@ -1226,7 +1218,7 @@ extern int xlu__disk_yylex (yyscan_t yyscanner); /* Code executed at the end of each rule. */ #ifndef YY_BREAK -#define YY_BREAK break; +#define YY_BREAK /*LINTED*/break; #endif #define YY_RULE_SETUP \ @@ -1236,9 +1228,9 @@ extern int xlu__disk_yylex (yyscan_t yyscanner); */ YY_DECL { - register yy_state_type yy_current_state; - register char *yy_cp, *yy_bp; - register int yy_act; + yy_state_type yy_current_state; + char *yy_cp, *yy_bp; + int yy_act; struct yyguts_t * yyg = (struct yyguts_t*)yyscanner; if ( !yyg->yy_init ) @@ -1274,14 +1266,14 @@ YY_DECL } { -#line 165 "libxlu_disk_l.l" +#line 166 "libxlu_disk_l.l" /*----- the scanner rules which do the parsing -----*/ -#line 1283 "libxlu_disk_l.c" +#line 1275 "libxlu_disk_l.c" - while ( 1 ) /* loops until end-of-file is reached */ + while ( /*CONSTCOND*/1 ) /* loops until end-of-file is reached */ { yyg->yy_more_len = 0; if ( yyg->yy_more_flag ) @@ -1307,18 +1299,18 @@ YY_DECL yy_match: do { - register YY_CHAR yy_c = yy_ec[YY_SC_TO_UI(*yy_cp)] ; + YY_CHAR yy_c = yy_ec[YY_SC_TO_UI(*yy_cp)] ; while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state ) { yy_current_state = (int) yy_def[yy_current_state]; - if ( yy_current_state >= 355 ) + if ( yy_current_state >= 356 ) yy_c = yy_meta[(unsigned int) yy_c]; } - yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c]; + yy_current_state = yy_nxt[yy_base[yy_current_state] + (flex_int16_t) yy_c]; *yyg->yy_state_ptr++ = yy_current_state; ++yy_cp; } - while ( yy_current_state != 354 ); + while ( yy_current_state != 355 ); yy_find_action: yy_current_state = *--yyg->yy_state_ptr; @@ -1368,135 +1360,135 @@ do_action: /* This label is used only to access EOF actions. */ case 1: /* rule 1 can match eol */ YY_RULE_SETUP -#line 169 "libxlu_disk_l.l" +#line 170 "libxlu_disk_l.l" { /* ignore whitespace before parameters */ } YY_BREAK /* ordinary parameters setting enums or strings */ case 2: /* rule 2 can match eol */ YY_RULE_SETUP -#line 173 "libxlu_disk_l.l" +#line 174 "libxlu_disk_l.l" { STRIP(','); setformat(DPC, FROMEQUALS); } YY_BREAK case 3: YY_RULE_SETUP -#line 175 "libxlu_disk_l.l" +#line 176 "libxlu_disk_l.l" { DPC->disk->is_cdrom = 1; } YY_BREAK case 4: YY_RULE_SETUP -#line 176 "libxlu_disk_l.l" +#line 177 "libxlu_disk_l.l" { DPC->disk->is_cdrom = 1; } YY_BREAK case 5: YY_RULE_SETUP -#line 177 "libxlu_disk_l.l" +#line 178 "libxlu_disk_l.l" { DPC->disk->is_cdrom = 0; } YY_BREAK case 6: /* rule 6 can match eol */ YY_RULE_SETUP -#line 178 "libxlu_disk_l.l" +#line 179 "libxlu_disk_l.l" { xlu__disk_err(DPC,yytext,"unknown value for type"); } YY_BREAK case 7: /* rule 7 can match eol */ YY_RULE_SETUP -#line 180 "libxlu_disk_l.l" +#line 181 "libxlu_disk_l.l" { STRIP(','); setaccess(DPC, FROMEQUALS); } YY_BREAK case 8: /* rule 8 can match eol */ YY_RULE_SETUP -#line 181 "libxlu_disk_l.l" +#line 182 "libxlu_disk_l.l" { STRIP(','); SAVESTRING("backend", backend_domname, FROMEQUALS); } YY_BREAK case 9: /* rule 9 can match eol */ YY_RULE_SETUP -#line 182 "libxlu_disk_l.l" +#line 183 "libxlu_disk_l.l" { STRIP(','); setbackendtype(DPC,FROMEQUALS); } YY_BREAK case 10: /* rule 10 can match eol */ YY_RULE_SETUP -#line 184 "libxlu_disk_l.l" +#line 185 "libxlu_disk_l.l" { STRIP(','); SAVESTRING("vdev", vdev, FROMEQUALS); } YY_BREAK case 11: /* rule 11 can match eol */ YY_RULE_SETUP -#line 185 "libxlu_disk_l.l" +#line 186 "libxlu_disk_l.l" { STRIP(','); SAVESTRING("script", script, FROMEQUALS); } YY_BREAK case 12: YY_RULE_SETUP -#line 186 "libxlu_disk_l.l" +#line 187 "libxlu_disk_l.l" { DPC->disk->direct_io_safe = 1; } YY_BREAK case 13: YY_RULE_SETUP -#line 187 "libxlu_disk_l.l" +#line 188 "libxlu_disk_l.l" { libxl_defbool_set(&DPC->disk->discard_enable, true); } YY_BREAK case 14: YY_RULE_SETUP -#line 188 "libxlu_disk_l.l" +#line 189 "libxlu_disk_l.l" { libxl_defbool_set(&DPC->disk->discard_enable, false); } YY_BREAK /* Note that the COLO configuration settings should be considered unstable. * They may change incompatibly in future versions of Xen. */ case 15: YY_RULE_SETUP -#line 191 "libxlu_disk_l.l" +#line 192 "libxlu_disk_l.l" { libxl_defbool_set(&DPC->disk->colo_enable, true); } YY_BREAK case 16: YY_RULE_SETUP -#line 192 "libxlu_disk_l.l" +#line 193 "libxlu_disk_l.l" { libxl_defbool_set(&DPC->disk->colo_enable, false); } YY_BREAK case 17: /* rule 17 can match eol */ YY_RULE_SETUP -#line 193 "libxlu_disk_l.l" +#line 194 "libxlu_disk_l.l" { STRIP(','); SAVESTRING("colo-host", colo_host, FROMEQUALS); } YY_BREAK case 18: /* rule 18 can match eol */ YY_RULE_SETUP -#line 194 "libxlu_disk_l.l" +#line 195 "libxlu_disk_l.l" { STRIP(','); setcoloport(DPC, FROMEQUALS); } YY_BREAK case 19: /* rule 19 can match eol */ YY_RULE_SETUP -#line 195 "libxlu_disk_l.l" +#line 196 "libxlu_disk_l.l" { STRIP(','); SAVESTRING("colo-export", colo_export, FROMEQUALS); } YY_BREAK case 20: /* rule 20 can match eol */ YY_RULE_SETUP -#line 196 "libxlu_disk_l.l" +#line 197 "libxlu_disk_l.l" { STRIP(','); SAVESTRING("active-disk", active_disk, FROMEQUALS); } YY_BREAK case 21: /* rule 21 can match eol */ YY_RULE_SETUP -#line 197 "libxlu_disk_l.l" +#line 198 "libxlu_disk_l.l" { STRIP(','); SAVESTRING("hidden-disk", hidden_disk, FROMEQUALS); } YY_BREAK /* the target magic parameter, eats the rest of the string */ case 22: YY_RULE_SETUP -#line 201 "libxlu_disk_l.l" +#line 202 "libxlu_disk_l.l" { STRIP(','); SAVESTRING("target", pdev_path, FROMEQUALS); } YY_BREAK /* unknown parameters */ case 23: /* rule 23 can match eol */ YY_RULE_SETUP -#line 205 "libxlu_disk_l.l" +#line 206 "libxlu_disk_l.l" { xlu__disk_err(DPC,yytext,"unknown parameter"); } YY_BREAK /* deprecated prefixes */ @@ -1504,7 +1496,7 @@ YY_RULE_SETUP * matched the whole string, so these patterns take precedence */ case 24: YY_RULE_SETUP -#line 212 "libxlu_disk_l.l" +#line 213 "libxlu_disk_l.l" { STRIP(':'); DPC->had_depr_prefix=1; DEPRECATE("use `[format=]...,'"); @@ -1513,7 +1505,7 @@ YY_RULE_SETUP YY_BREAK case 25: YY_RULE_SETUP -#line 218 "libxlu_disk_l.l" +#line 219 "libxlu_disk_l.l" { char *newscript; STRIP(':'); @@ -1532,12 +1524,12 @@ case 26: yyg->yy_c_buf_p = yy_cp = yy_bp + 8; YY_DO_BEFORE_ACTION; /* set up yytext again */ YY_RULE_SETUP -#line 231 "libxlu_disk_l.l" +#line 232 "libxlu_disk_l.l" { DPC->had_depr_prefix=1; DEPRECATE(0); } YY_BREAK case 27: YY_RULE_SETUP -#line 232 "libxlu_disk_l.l" +#line 233 "libxlu_disk_l.l" { DPC->had_depr_prefix=1; DEPRECATE(0); } YY_BREAK case 28: @@ -1545,7 +1537,7 @@ case 28: yyg->yy_c_buf_p = yy_cp = yy_bp + 4; YY_DO_BEFORE_ACTION; /* set up yytext again */ YY_RULE_SETUP -#line 233 "libxlu_disk_l.l" +#line 234 "libxlu_disk_l.l" { DPC->had_depr_prefix=1; DEPRECATE(0); } YY_BREAK case 29: @@ -1553,7 +1545,7 @@ case 29: yyg->yy_c_buf_p = yy_cp = yy_bp + 6; YY_DO_BEFORE_ACTION; /* set up yytext again */ YY_RULE_SETUP -#line 234 "libxlu_disk_l.l" +#line 235 "libxlu_disk_l.l" { DPC->had_depr_prefix=1; DEPRECATE(0); } YY_BREAK case 30: @@ -1561,7 +1553,7 @@ case 30: yyg->yy_c_buf_p = yy_cp = yy_bp + 5; YY_DO_BEFORE_ACTION; /* set up yytext again */ YY_RULE_SETUP -#line 235 "libxlu_disk_l.l" +#line 236 "libxlu_disk_l.l" { DPC->had_depr_prefix=1; DEPRECATE(0); } YY_BREAK case 31: @@ -1569,13 +1561,13 @@ case 31: yyg->yy_c_buf_p = yy_cp = yy_bp + 4; YY_DO_BEFORE_ACTION; /* set up yytext again */ YY_RULE_SETUP -#line 236 "libxlu_disk_l.l" +#line 237 "libxlu_disk_l.l" { DPC->had_depr_prefix=1; DEPRECATE(0); } YY_BREAK case 32: /* rule 32 can match eol */ YY_RULE_SETUP -#line 238 "libxlu_disk_l.l" +#line 239 "libxlu_disk_l.l" { xlu__disk_err(DPC,yytext,"unknown deprecated disk prefix"); return 0; @@ -1585,7 +1577,7 @@ YY_RULE_SETUP case 33: /* rule 33 can match eol */ YY_RULE_SETUP -#line 245 "libxlu_disk_l.l" +#line 246 "libxlu_disk_l.l" { STRIP(','); @@ -1614,7 +1606,7 @@ YY_RULE_SETUP YY_BREAK case 34: YY_RULE_SETUP -#line 271 "libxlu_disk_l.l" +#line 272 "libxlu_disk_l.l" { BEGIN(LEXERR); yymore(); @@ -1622,17 +1614,17 @@ YY_RULE_SETUP YY_BREAK case 35: YY_RULE_SETUP -#line 275 "libxlu_disk_l.l" +#line 276 "libxlu_disk_l.l" { xlu__disk_err(DPC,yytext,"bad disk syntax"); return 0; } YY_BREAK case 36: YY_RULE_SETUP -#line 278 "libxlu_disk_l.l" +#line 279 "libxlu_disk_l.l" YY_FATAL_ERROR( "flex scanner jammed" ); YY_BREAK -#line 1636 "libxlu_disk_l.c" +#line 1628 "libxlu_disk_l.c" case YY_STATE_EOF(INITIAL): case YY_STATE_EOF(LEXERR): yyterminate(); @@ -1777,9 +1769,9 @@ YY_FATAL_ERROR( "flex scanner jammed" ); static int yy_get_next_buffer (yyscan_t yyscanner) { struct yyguts_t * yyg = (struct yyguts_t*)yyscanner; - register char *dest = YY_CURRENT_BUFFER_LVALUE->yy_ch_buf; - register char *source = yyg->yytext_ptr; - register int number_to_move, i; + char *dest = YY_CURRENT_BUFFER_LVALUE->yy_ch_buf; + char *source = yyg->yytext_ptr; + yy_size_t number_to_move, i; int ret_val; if ( yyg->yy_c_buf_p > &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[yyg->yy_n_chars + 1] ) @@ -1808,7 +1800,7 @@ static int yy_get_next_buffer (yyscan_t yyscanner) /* Try to read more data. */ /* First move last chars to start of buffer. */ - number_to_move = (int) (yyg->yy_c_buf_p - yyg->yytext_ptr) - 1; + number_to_move = (yy_size_t) (yyg->yy_c_buf_p - yyg->yytext_ptr) - 1; for ( i = 0; i < number_to_move; ++i ) *(dest++) = *(source++); @@ -1861,9 +1853,9 @@ static int yy_get_next_buffer (yyscan_t yyscanner) else ret_val = EOB_ACT_CONTINUE_SCAN; - if ((yy_size_t) (yyg->yy_n_chars + number_to_move) > YY_CURRENT_BUFFER_LVALUE->yy_buf_size) { + if ((int) (yyg->yy_n_chars + number_to_move) > YY_CURRENT_BUFFER_LVALUE->yy_buf_size) { /* Extend the array by 50%, plus the number we really need. */ - yy_size_t new_size = yyg->yy_n_chars + number_to_move + (yyg->yy_n_chars >> 1); + int new_size = yyg->yy_n_chars + number_to_move + (yyg->yy_n_chars >> 1); YY_CURRENT_BUFFER_LVALUE->yy_ch_buf = (char *) xlu__disk_yyrealloc((void *) YY_CURRENT_BUFFER_LVALUE->yy_ch_buf,new_size ,yyscanner ); if ( ! YY_CURRENT_BUFFER_LVALUE->yy_ch_buf ) YY_FATAL_ERROR( "out of dynamic memory in yy_get_next_buffer()" ); @@ -1882,8 +1874,8 @@ static int yy_get_next_buffer (yyscan_t yyscanner) static yy_state_type yy_get_previous_state (yyscan_t yyscanner) { - register yy_state_type yy_current_state; - register char *yy_cp; + yy_state_type yy_current_state; + char *yy_cp; struct yyguts_t * yyg = (struct yyguts_t*)yyscanner; yy_current_state = yyg->yy_start; @@ -1893,14 +1885,14 @@ static int yy_get_next_buffer (yyscan_t yyscanner) for ( yy_cp = yyg->yytext_ptr + YY_MORE_ADJ; yy_cp < yyg->yy_c_buf_p; ++yy_cp ) { - register YY_CHAR yy_c = (*yy_cp ? yy_ec[YY_SC_TO_UI(*yy_cp)] : 1); + YY_CHAR yy_c = (*yy_cp ? yy_ec[YY_SC_TO_UI(*yy_cp)] : 1); while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state ) { yy_current_state = (int) yy_def[yy_current_state]; - if ( yy_current_state >= 355 ) + if ( yy_current_state >= 356 ) yy_c = yy_meta[(unsigned int) yy_c]; } - yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c]; + yy_current_state = yy_nxt[yy_base[yy_current_state] + (flex_int16_t) yy_c]; *yyg->yy_state_ptr++ = yy_current_state; } @@ -1914,18 +1906,18 @@ static int yy_get_next_buffer (yyscan_t yyscanner) */ static yy_state_type yy_try_NUL_trans (yy_state_type yy_current_state , yyscan_t yyscanner) { - register int yy_is_jam; + int yy_is_jam; struct yyguts_t * yyg = (struct yyguts_t*)yyscanner; /* This var may be unused depending upon options. */ - register YY_CHAR yy_c = 1; + YY_CHAR yy_c = 1; while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state ) { yy_current_state = (int) yy_def[yy_current_state]; - if ( yy_current_state >= 355 ) + if ( yy_current_state >= 356 ) yy_c = yy_meta[(unsigned int) yy_c]; } - yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c]; - yy_is_jam = (yy_current_state == 354); + yy_current_state = yy_nxt[yy_base[yy_current_state] + (flex_int16_t) yy_c]; + yy_is_jam = (yy_current_state == 355); if ( ! yy_is_jam ) *yyg->yy_state_ptr++ = yy_current_state; @@ -1933,6 +1925,10 @@ static int yy_get_next_buffer (yyscan_t yyscanner) return yy_is_jam ? 0 : yy_current_state; } +#ifndef YY_NO_UNPUT + +#endif + #ifndef YY_NO_INPUT #ifdef __cplusplus static int yyinput (yyscan_t yyscanner) @@ -1958,7 +1954,7 @@ static int yy_get_next_buffer (yyscan_t yyscanner) else { /* need more input */ - yy_size_t offset = yyg->yy_c_buf_p - yyg->yytext_ptr; + int offset = yyg->yy_c_buf_p - yyg->yytext_ptr; ++yyg->yy_c_buf_p; switch ( yy_get_next_buffer( yyscanner ) ) @@ -1982,7 +1978,7 @@ static int yy_get_next_buffer (yyscan_t yyscanner) case EOB_ACT_END_OF_FILE: { if ( xlu__disk_yywrap(yyscanner ) ) - return EOF; + return 0; if ( ! yyg->yy_did_buffer_switch_on_eof ) YY_NEW_FILE; @@ -2086,7 +2082,7 @@ static void xlu__disk_yy_load_buffer_state (yyscan_t yyscanner) if ( ! b ) YY_FATAL_ERROR( "out of dynamic memory in xlu__disk_yy_create_buffer()" ); - b->yy_buf_size = size; + b->yy_buf_size = (yy_size_t)size; /* yy_ch_buf has to be 2 characters longer than the size given because * we need to put in 2 end-of-buffer characters. @@ -2238,7 +2234,7 @@ void xlu__disk_yypop_buffer_state (yyscan_t yyscanner) */ static void xlu__disk_yyensure_buffer_stack (yyscan_t yyscanner) { - yy_size_t num_to_alloc; + int num_to_alloc; struct yyguts_t * yyg = (struct yyguts_t*)yyscanner; if (!yyg->yy_buffer_stack) { @@ -2247,7 +2243,7 @@ static void xlu__disk_yyensure_buffer_stack (yyscan_t yyscanner) * scanner will even need a stack. We use 2 instead of 1 to avoid an * immediate realloc on the next call. */ - num_to_alloc = 1; + num_to_alloc = 1; /* After all that talk, this was set to 1 anyways... */ yyg->yy_buffer_stack = (struct yy_buffer_state**)xlu__disk_yyalloc (num_to_alloc * sizeof(struct yy_buffer_state*) , yyscanner); @@ -2264,7 +2260,7 @@ static void xlu__disk_yyensure_buffer_stack (yyscan_t yyscanner) if (yyg->yy_buffer_stack_top >= (yyg->yy_buffer_stack_max) - 1){ /* Increase the buffer to prepare for a possible push. */ - int grow_size = 8 /* arbitrary grow size */; + yy_size_t grow_size = 8 /* arbitrary grow size */; num_to_alloc = yyg->yy_buffer_stack_max + grow_size; yyg->yy_buffer_stack = (struct yy_buffer_state**)xlu__disk_yyrealloc @@ -2294,7 +2290,7 @@ YY_BUFFER_STATE xlu__disk_yy_scan_buffer (char * base, yy_size_t size , yyscan base[size-2] != YY_END_OF_BUFFER_CHAR || base[size-1] != YY_END_OF_BUFFER_CHAR ) /* They forgot to leave room for the EOB's. */ - return 0; + return NULL; b = (YY_BUFFER_STATE) xlu__disk_yyalloc(sizeof( struct yy_buffer_state ) ,yyscanner ); if ( ! b ) @@ -2303,7 +2299,7 @@ YY_BUFFER_STATE xlu__disk_yy_scan_buffer (char * base, yy_size_t size , yyscan b->yy_buf_size = size - 2; /* "- 2" to take care of EOB's */ b->yy_buf_pos = b->yy_ch_buf = base; b->yy_is_our_buffer = 0; - b->yy_input_file = 0; + b->yy_input_file = NULL; b->yy_n_chars = b->yy_buf_size; b->yy_is_interactive = 0; b->yy_at_bol = 1; @@ -2326,7 +2322,7 @@ YY_BUFFER_STATE xlu__disk_yy_scan_buffer (char * base, yy_size_t size , yyscan YY_BUFFER_STATE xlu__disk_yy_scan_string (yyconst char * yystr , yyscan_t yyscanner) { - return xlu__disk_yy_scan_bytes(yystr,strlen(yystr) ,yyscanner); + return xlu__disk_yy_scan_bytes(yystr,(int) strlen(yystr) ,yyscanner); } /** Setup the input buffer state to scan the given bytes. The next call to xlu__disk_yylex() will @@ -2336,7 +2332,7 @@ YY_BUFFER_STATE xlu__disk_yy_scan_string (yyconst char * yystr , yyscan_t yyscan * @param yyscanner The scanner object. * @return the newly allocated buffer state object. */ -YY_BUFFER_STATE xlu__disk_yy_scan_bytes (yyconst char * yybytes, yy_size_t _yybytes_len , yyscan_t yyscanner) +YY_BUFFER_STATE xlu__disk_yy_scan_bytes (yyconst char * yybytes, int _yybytes_len , yyscan_t yyscanner) { YY_BUFFER_STATE b; char *buf; @@ -2344,7 +2340,7 @@ YY_BUFFER_STATE xlu__disk_yy_scan_bytes (yyconst char * yybytes, yy_size_t _yy yy_size_t i; /* Get memory for full buffer, including space for trailing EOB's. */ - n = _yybytes_len + 2; + n = (yy_size_t) _yybytes_len + 2; buf = (char *) xlu__disk_yyalloc(n ,yyscanner ); if ( ! buf ) YY_FATAL_ERROR( "out of dynamic memory in xlu__disk_yy_scan_bytes()" ); @@ -2370,9 +2366,11 @@ YY_BUFFER_STATE xlu__disk_yy_scan_bytes (yyconst char * yybytes, yy_size_t _yy #define YY_EXIT_FAILURE 2 #endif -static void yy_fatal_error (yyconst char* msg , yyscan_t yyscanner) +static void yynoreturn yy_fatal_error (yyconst char* msg , yyscan_t yyscanner) { - (void) fprintf( stderr, "%s\n", msg ); + struct yyguts_t * yyg = (struct yyguts_t*)yyscanner; + (void)yyg; + (void) fprintf( stderr, "%s\n", msg ); exit( YY_EXIT_FAILURE ); } @@ -2451,7 +2449,7 @@ FILE *xlu__disk_yyget_out (yyscan_t yyscanner) /** Get the length of the current token. * @param yyscanner The scanner object. */ -yy_size_t xlu__disk_yyget_leng (yyscan_t yyscanner) +int xlu__disk_yyget_leng (yyscan_t yyscanner) { struct yyguts_t * yyg = (struct yyguts_t*)yyscanner; return yyleng; @@ -2478,10 +2476,10 @@ void xlu__disk_yyset_extra (YY_EXTRA_TYPE user_defined , yyscan_t yyscanner) } /** Set the current line number. - * @param line_number + * @param _line_number line number * @param yyscanner The scanner object. */ -void xlu__disk_yyset_lineno (int line_number , yyscan_t yyscanner) +void xlu__disk_yyset_lineno (int _line_number , yyscan_t yyscanner) { struct yyguts_t * yyg = (struct yyguts_t*)yyscanner; @@ -2489,14 +2487,14 @@ void xlu__disk_yyset_lineno (int line_number , yyscan_t yyscanner) if (! YY_CURRENT_BUFFER ) YY_FATAL_ERROR( "xlu__disk_yyset_lineno called with no buffer" ); - yylineno = line_number; + yylineno = _line_number; } /** Set the current column. - * @param line_number + * @param _column_no column number * @param yyscanner The scanner object. */ -void xlu__disk_yyset_column (int column_no , yyscan_t yyscanner) +void xlu__disk_yyset_column (int _column_no , yyscan_t yyscanner) { struct yyguts_t * yyg = (struct yyguts_t*)yyscanner; @@ -2504,25 +2502,25 @@ void xlu__disk_yyset_column (int column_no , yyscan_t yyscanner) if (! YY_CURRENT_BUFFER ) YY_FATAL_ERROR( "xlu__disk_yyset_column called with no buffer" ); - yycolumn = column_no; + yycolumn = _column_no; } /** Set the input stream. This does not discard the current * input buffer. - * @param in_str A readable stream. + * @param _in_str A readable stream. * @param yyscanner The scanner object. * @see xlu__disk_yy_switch_to_buffer */ -void xlu__disk_yyset_in (FILE * in_str , yyscan_t yyscanner) +void xlu__disk_yyset_in (FILE * _in_str , yyscan_t yyscanner) { struct yyguts_t * yyg = (struct yyguts_t*)yyscanner; - yyin = in_str ; + yyin = _in_str ; } -void xlu__disk_yyset_out (FILE * out_str , yyscan_t yyscanner) +void xlu__disk_yyset_out (FILE * _out_str , yyscan_t yyscanner) { struct yyguts_t * yyg = (struct yyguts_t*)yyscanner; - yyout = out_str ; + yyout = _out_str ; } int xlu__disk_yyget_debug (yyscan_t yyscanner) @@ -2531,10 +2529,10 @@ int xlu__disk_yyget_debug (yyscan_t yyscanner) return yy_flex_debug; } -void xlu__disk_yyset_debug (int bdebug , yyscan_t yyscanner) +void xlu__disk_yyset_debug (int _bdebug , yyscan_t yyscanner) { struct yyguts_t * yyg = (struct yyguts_t*)yyscanner; - yy_flex_debug = bdebug ; + yy_flex_debug = _bdebug ; } /* Accessor methods for yylval and yylloc */ @@ -2610,10 +2608,10 @@ static int yy_init_globals (yyscan_t yyscanner) * This function is called from xlu__disk_yylex_destroy(), so don't allocate here. */ - yyg->yy_buffer_stack = 0; + yyg->yy_buffer_stack = NULL; yyg->yy_buffer_stack_top = 0; yyg->yy_buffer_stack_max = 0; - yyg->yy_c_buf_p = (char *) 0; + yyg->yy_c_buf_p = NULL; yyg->yy_init = 0; yyg->yy_start = 0; @@ -2631,8 +2629,8 @@ static int yy_init_globals (yyscan_t yyscanner) yyin = stdin; yyout = stdout; #else - yyin = (FILE *) 0; - yyout = (FILE *) 0; + yyin = NULL; + yyout = NULL; #endif /* For future reference: Set errno on error, since we are called by @@ -2681,7 +2679,10 @@ int xlu__disk_yylex_destroy (yyscan_t yyscanner) #ifndef yytext_ptr static void yy_flex_strncpy (char* s1, yyconst char * s2, int n , yyscan_t yyscanner) { - register int i; + struct yyguts_t * yyg = (struct yyguts_t*)yyscanner; + (void)yyg; + + int i; for ( i = 0; i < n; ++i ) s1[i] = s2[i]; } @@ -2690,7 +2691,7 @@ static void yy_flex_strncpy (char* s1, yyconst char * s2, int n , yyscan_t yysca #ifdef YY_NEED_STRLEN static int yy_flex_strlen (yyconst char * s , yyscan_t yyscanner) { - register int n; + int n; for ( n = 0; s[n]; ++n ) ; @@ -2700,11 +2701,16 @@ static int yy_flex_strlen (yyconst char * s , yyscan_t yyscanner) void *xlu__disk_yyalloc (yy_size_t size , yyscan_t yyscanner) { - return (void *) malloc( size ); + struct yyguts_t * yyg = (struct yyguts_t*)yyscanner; + (void)yyg; + return malloc(size); } void *xlu__disk_yyrealloc (void * ptr, yy_size_t size , yyscan_t yyscanner) { + struct yyguts_t * yyg = (struct yyguts_t*)yyscanner; + (void)yyg; + /* The cast to (char *) in the following accommodates both * implementations that use char* generic pointers, and those * that use void* generic pointers. It works with the latter @@ -2712,14 +2718,16 @@ void *xlu__disk_yyrealloc (void * ptr, yy_size_t size , yyscan_t yyscanner) * any pointer type to void*, and deal with argument conversions * as though doing an assignment. */ - return (void *) realloc( (char *) ptr, size ); + return realloc(ptr, size); } void xlu__disk_yyfree (void * ptr , yyscan_t yyscanner) { + struct yyguts_t * yyg = (struct yyguts_t*)yyscanner; + (void)yyg; free( (char *) ptr ); /* see xlu__disk_yyrealloc() for (char *) cast */ } #define YYTABLES_NAME "yytables" -#line 277 "libxlu_disk_l.l" +#line 279 "libxlu_disk_l.l" diff --git a/tools/libxl/libxlu_disk_l.h b/tools/libxl/libxlu_disk_l.h index 794274f552..abeb9bdd68 100644 --- a/tools/libxl/libxlu_disk_l.h +++ b/tools/libxl/libxlu_disk_l.h @@ -3,12 +3,9 @@ #define xlu__disk_yyIN_HEADER 1 #line 6 "libxlu_disk_l.h" -#line 31 "libxlu_disk_l.l" #include "libxl_osdeps.h" /* must come before any other headers */ - - -#line 12 "libxlu_disk_l.h" +#line 9 "libxlu_disk_l.h" #define YY_INT_ALIGNED short int @@ -16,8 +13,8 @@ #define FLEX_SCANNER #define YY_FLEX_MAJOR_VERSION 2 -#define YY_FLEX_MINOR_VERSION 5 -#define YY_FLEX_SUBMINOR_VERSION 39 +#define YY_FLEX_MINOR_VERSION 6 +#define YY_FLEX_SUBMINOR_VERSION 1 #if YY_FLEX_SUBMINOR_VERSION > 0 #define FLEX_BETA #endif @@ -96,25 +93,13 @@ typedef unsigned int flex_uint32_t; #endif /* ! FLEXINT_H */ -#ifdef __cplusplus - -/* The "const" storage-class-modifier is valid. */ -#define YY_USE_CONST - -#else /* ! __cplusplus */ - -/* C99 requires __STDC__ to be defined as 1. */ -#if defined (__STDC__) - -#define YY_USE_CONST - -#endif /* defined (__STDC__) */ -#endif /* ! __cplusplus */ - -#ifdef YY_USE_CONST +/* TODO: this is always defined, so inline it */ #define yyconst const + +#if defined(__GNUC__) && __GNUC__ >= 3 +#define yynoreturn __attribute__((__noreturn__)) #else -#define yyconst +#define yynoreturn #endif /* An opaque pointer. */ @@ -169,12 +154,12 @@ struct yy_buffer_state /* Size of input buffer in bytes, not including room for EOB * characters. */ - yy_size_t yy_buf_size; + int yy_buf_size; /* Number of characters read into yy_ch_buf, not including EOB * characters. */ - yy_size_t yy_n_chars; + int yy_n_chars; /* Whether we "own" the buffer - i.e., we know we created it, * and can realloc() it to grow it, and should free() it to @@ -218,13 +203,13 @@ void xlu__disk_yypop_buffer_state (yyscan_t yyscanner ); YY_BUFFER_STATE xlu__disk_yy_scan_buffer (char *base,yy_size_t size ,yyscan_t yyscanner ); YY_BUFFER_STATE xlu__disk_yy_scan_string (yyconst char *yy_str ,yyscan_t yyscanner ); -YY_BUFFER_STATE xlu__disk_yy_scan_bytes (yyconst char *bytes,yy_size_t len ,yyscan_t yyscanner ); +YY_BUFFER_STATE xlu__disk_yy_scan_bytes (yyconst char *bytes,int len ,yyscan_t yyscanner ); void *xlu__disk_yyalloc (yy_size_t ,yyscan_t yyscanner ); void *xlu__disk_yyrealloc (void *,yy_size_t ,yyscan_t yyscanner ); void xlu__disk_yyfree (void * ,yyscan_t yyscanner ); -#define xlu__disk_yywrap(yyscanner) 1 +#define xlu__disk_yywrap(yyscanner) (/*CONSTCOND*/1) #define YY_SKIP_YYWRAP #define yytext_ptr yytext_r @@ -266,23 +251,23 @@ void xlu__disk_yyset_extra (YY_EXTRA_TYPE user_defined ,yyscan_t yyscanner ); FILE *xlu__disk_yyget_in (yyscan_t yyscanner ); -void xlu__disk_yyset_in (FILE * in_str ,yyscan_t yyscanner ); +void xlu__disk_yyset_in (FILE * _in_str ,yyscan_t yyscanner ); FILE *xlu__disk_yyget_out (yyscan_t yyscanner ); -void xlu__disk_yyset_out (FILE * out_str ,yyscan_t yyscanner ); +void xlu__disk_yyset_out (FILE * _out_str ,yyscan_t yyscanner ); -yy_size_t xlu__disk_yyget_leng (yyscan_t yyscanner ); + int xlu__disk_yyget_leng (yyscan_t yyscanner ); char *xlu__disk_yyget_text (yyscan_t yyscanner ); int xlu__disk_yyget_lineno (yyscan_t yyscanner ); -void xlu__disk_yyset_lineno (int line_number ,yyscan_t yyscanner ); +void xlu__disk_yyset_lineno (int _line_number ,yyscan_t yyscanner ); int xlu__disk_yyget_column (yyscan_t yyscanner ); -void xlu__disk_yyset_column (int column_no ,yyscan_t yyscanner ); +void xlu__disk_yyset_column (int _column_no ,yyscan_t yyscanner ); /* Macros after this point can all be overridden by user definitions in * section 1. @@ -348,8 +333,8 @@ extern int xlu__disk_yylex (yyscan_t yyscanner); #undef YY_DECL #endif -#line 277 "libxlu_disk_l.l" +#line 279 "libxlu_disk_l.l" -#line 354 "libxlu_disk_l.h" +#line 339 "libxlu_disk_l.h" #undef xlu__disk_yyIN_HEADER #endif /* xlu__disk_yyHEADER_H */ diff --git a/tools/libxl/libxlu_disk_l.l b/tools/libxl/libxlu_disk_l.l index 5b6db221e4..f0e6a3b84e 100644 --- a/tools/libxl/libxlu_disk_l.l +++ b/tools/libxl/libxlu_disk_l.l @@ -102,6 +102,7 @@ static void setformat(DiskParseContext *dpc, const char *str) { else if (!strcmp(str,"qcow2")) DSET(dpc,format,FORMAT,str,QCOW2); else if (!strcmp(str,"vhd")) DSET(dpc,format,FORMAT,str,VHD); else if (!strcmp(str,"empty")) DSET(dpc,format,FORMAT,str,EMPTY); + else if (!strcmp(str,"qed")) DSET(dpc,format,FORMAT,str,QED); else xlu__disk_err(dpc,str,"unknown value for format"); } @@ -209,7 +210,7 @@ target=.* { STRIP(','); SAVESTRING("target", pdev_path, FROMEQUALS); } /* the "/.*" in these patterns ensures that they count as if they * matched the whole string, so these patterns take precedence */ -(raw|qcow2?|vhd):/.* { +(raw|qcow2?|vhd|qed):/.* { STRIP(':'); DPC->had_depr_prefix=1; DEPRECATE("use `[format=]...,'"); setformat(DPC, yytext);