Arrigo Marchiori
2016-10-14 0347bda93a1f251c8bc36d56d5dd9c02daf8af64
restore C99 compliance.

C99 does not allow anonymous unions
2个文件已修改
20 ■■■■ 已修改文件
libscpi/inc/scpi/types.h 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
libscpi/src/units.c 18 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
libscpi/inc/scpi/types.h
@@ -328,7 +328,7 @@
        union {
            double value;
            int32_t tag;
        };
        } content;
        scpi_unit_t unit;
        int8_t base;
    };
libscpi/src/units.c
@@ -355,7 +355,7 @@
        return FALSE;
    }
    value->value *= unitDef->mult;
    value->content.value *= unitDef->mult;
    value->unit = unitDef->unit;
    return TRUE;
@@ -426,23 +426,23 @@
    switch (param.type) {
        case SCPI_TOKEN_DECIMAL_NUMERIC_PROGRAM_DATA:
            SCPI_ParamToDouble(context, &param, &(value->value));
            SCPI_ParamToDouble(context, &param, &(value->content.value));
            break;
        case SCPI_TOKEN_HEXNUM:
            SCPI_ParamToDouble(context, &param, &(value->value));
            SCPI_ParamToDouble(context, &param, &(value->content.value));
            break;
        case SCPI_TOKEN_OCTNUM:
            SCPI_ParamToDouble(context, &param, &(value->value));
            SCPI_ParamToDouble(context, &param, &(value->content.value));
            break;
        case SCPI_TOKEN_BINNUM:
            SCPI_ParamToDouble(context, &param, &(value->value));
            SCPI_ParamToDouble(context, &param, &(value->content.value));
            break;
        case SCPI_TOKEN_DECIMAL_NUMERIC_PROGRAM_DATA_WITH_SUFFIX:
            scpiLex_DecimalNumericProgramData(&state, &token);
            scpiLex_WhiteSpace(&state, &token);
            scpiLex_SuffixProgramData(&state, &token);
            SCPI_ParamToDouble(context, &param, &(value->value));
            SCPI_ParamToDouble(context, &param, &(value->content.value));
            result = transformNumber(context, token.ptr, token.len, value);
            break;
@@ -454,7 +454,7 @@
            result = SCPI_ParamToChoice(context, &token, special, &tag);
            value->special = TRUE;
            value->tag = tag;
            value->content.tag = tag;
            break;
        default:
@@ -482,7 +482,7 @@
    }
    if (value->special) {
        if (SCPI_ChoiceToName(special, value->tag, &type)) {
        if (SCPI_ChoiceToName(special, value->content.tag, &type)) {
            strncpy(str, type, len);
            result = SCPIDEFINE_strnlen(str, len - 1);
            str[result] = '\0';
@@ -493,7 +493,7 @@
        }
    }
    result = SCPI_DoubleToStr(value->value, str, len);
    result = SCPI_DoubleToStr(value->content.value, str, len);
    if (result + 1 < len) {
        unit = translateUnitInverse(context->units, value->unit);