From 3694ae08171c676b0a142488303824b7d589b5e5 Mon Sep 17 00:00:00 2001 From: Wouter van Oortmerssen <aardappel@gmail.com> Date: Thu, 18 Jan 2018 11:41:43 -0800 Subject: [PATCH] Disallow defaults on structs. Change-Id: Ia098126c92ea6f8abe94561bd9c09b29ac8f61f5 Context: https://github.com/google/flatbuffers/issues/4591 Tested: on Linux. --- src/idl_parser.cpp | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/idl_parser.cpp b/src/idl_parser.cpp index e89a3915..97eb426b 100644 --- a/src/idl_parser.cpp +++ b/src/idl_parser.cpp @@ -648,8 +648,9 @@ CheckedError Parser::ParseField(StructDef &struct_def) { if (token_ == '=') { NEXT(); - if (!IsScalar(type.base_type)) - return Error("default values currently only supported for scalars"); + if (!IsScalar(type.base_type) || struct_def.fixed) + return Error( + "default values currently only supported for scalars in tables"); ECHECK(ParseSingleValue(field->value)); } if (IsFloat(field->value.type.base_type)) { -- GitLab