From 6fedcce7ebdb7fae4d1f11af5194f919352235bf Mon Sep 17 00:00:00 2001
From: Jan Breuer <jan.breuer@jaybee.cz>
Date: 周日, 19 4月 2015 05:33:12 +0800
Subject: [PATCH] Next try to correct avr-libc detection

---
 libscpi/inc/scpi/types.h |   24 +++++++++---------------
 1 files changed, 9 insertions(+), 15 deletions(-)

diff --git a/libscpi/inc/scpi/types.h b/libscpi/inc/scpi/types.h
index 3a6d507..4851d9e 100644
--- a/libscpi/inc/scpi/types.h
+++ b/libscpi/inc/scpi/types.h
@@ -105,7 +105,7 @@
 
     typedef struct _scpi_command_t scpi_command_t;
 
-#define SCPI_CMD_LIST_END       {NULL, NULL, }
+#define SCPI_CMD_LIST_END       {NULL, NULL, 0}
 
     /* scpi interface */
     typedef struct _scpi_t scpi_t;
@@ -190,7 +190,6 @@
     typedef struct _scpi_parser_state_t scpi_parser_state_t;
 
     typedef scpi_result_t(*scpi_command_callback_t)(scpi_t *);
-    typedef int32_t(*scpi_test_command_callback_t)(scpi_t *);
 
     /* scpi error queue */
     typedef void * scpi_error_queue_t;
@@ -225,16 +224,17 @@
         SCPI_NUM_DOWN,
         SCPI_NUM_NAN,
         SCPI_NUM_INF,
-        SCPI_NUM_NINF
+        SCPI_NUM_NINF,
+        SCPI_NUM_AUTO
     };
     typedef enum _scpi_special_number_t scpi_special_number_t;
 
-    struct _scpi_special_number_def_t {
+    struct _scpi_choice_def_t {
         const char * name;
-        scpi_special_number_t type;
+        int32_t tag;
     };
-#define SCPI_SPECIAL_NUMBERS_LIST_END   {NULL, SCPI_NUM_NUMBER}    
-    typedef struct _scpi_special_number_def_t scpi_special_number_def_t;
+#define SCPI_CHOICE_LIST_END   {NULL, -1}
+    typedef struct _scpi_choice_def_t scpi_choice_def_t;
 
     struct _scpi_param_list_t {
         const scpi_command_t * cmd;
@@ -257,16 +257,12 @@
     };
     typedef struct _scpi_data_parameter_t scpi_data_parameter_t;
     
-    struct _scpi_parameter_t {
-        scpi_token_type_t type;
-        scpi_data_parameter_t data;
-        scpi_number_t number;
-    };
-    typedef struct _scpi_parameter_t scpi_parameter_t;
+    typedef scpi_token_t scpi_parameter_t;
     
     struct _scpi_command_t {
         const char * pattern;
         scpi_command_callback_t callback;
+        int32_t tag;
     };
 
     struct _scpi_interface_t {
@@ -275,7 +271,6 @@
         scpi_write_control_t control;
         scpi_command_callback_t flush;
         scpi_command_callback_t reset;
-        scpi_test_command_callback_t test;
     };
 
     struct _scpi_t {
@@ -289,7 +284,6 @@
         scpi_error_queue_t error_queue;
         scpi_reg_val_t * registers;
         const scpi_unit_def_t * units;
-        const scpi_special_number_def_t * special_numbers;
         void * user_context;
         scpi_parser_state_t parser_state;
         const char * idn[4];

--
Gitblit v1.9.1