mirror of
https://github.com/google/flatbuffers.git
synced 2026-06-02 04:04:19 +00:00
Disallowed 0 byte structs.
This is because they are incompatible with C++ and possibly other languages that make them minimum size 1 (to make sure multiple such objects don't reside at the same address). Forcing them to size 1 was also not practical, as that is requires updating the logic of a lot of implementations and thus possibly backwards incompatible. More here: https://github.com/google/flatbuffers/issues/4122 Change-Id: I2bfdc8597b7cfd2235bb4074bb2ae06f81f8e57d
This commit is contained in:
@@ -1230,6 +1230,7 @@ void ErrorTest() {
|
||||
TestError("enum X:byte (bit_flags) { Y=8 }", "bit flag out");
|
||||
TestError("table X { Y:int; } table X {", "datatype already");
|
||||
TestError("struct X (force_align: 7) { Y:int; }", "force_align");
|
||||
TestError("struct X {}", "size 0");
|
||||
TestError("{}", "no root");
|
||||
TestError("table X { Y:byte; } root_type X; { Y:1 } { Y:1 }", "end of file");
|
||||
TestError("table X { Y:byte; } root_type X; { Y:1 } table Y{ Z:int }",
|
||||
|
||||
Reference in New Issue
Block a user