[
https://issues.apache.org/jira/browse/AVRO-1994?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15872964#comment-15872964
]
Thiruvalluvan M. G. commented on AVRO-1994:
-------------------------------------------
Hi [~da77a], any updates on this? If you are unable to work on this right now,
I'd go ahead and commit the current patch. We can revisit the issue because
this should not affect the clients of the generated code.
> C++ Code Generator Generates Invalid Code if Field is of type Null
> ------------------------------------------------------------------
>
> Key: AVRO-1994
> URL: https://issues.apache.org/jira/browse/AVRO-1994
> Project: Avro
> Issue Type: Bug
> Components: c++
> Reporter: Darryl Green
> Attachments: AVRO-1994.patch
>
>
> An simple schema like this:
> {
> "name": "TestPrimitiveTypes",
> "type": "record",
> "fields": [
> { "name": "Null", "type": "null" },
> { "name": "Boolean", "type": "boolean" },
> { "name": "Int", "type": "int" },
> { "name": "Long", "type": "long" },
> { "name": "Float", "type": "float" },
> { "name": "Double", "type": "double" },
> { "name": "Bytes", "type": "bytes" },
> { "name": "String", "type": "string" }
> ]
> }
> Generates this C++ struct.
> struct TestPrimitiveTypes {
> $Undefined$ Null; // <-- BUG!
> bool Boolean;
> int32_t Int;
> int64_t Long;
> float Float;
> double Double;
> std::vector<uint8_t> Bytes;
> std::string String;
> TestPrimitiveTypes() :
> Null($Undefined$()),
> Boolean(bool()),
> Int(int32_t()),
> Long(int64_t()),
> Float(float()),
> Double(double()),
> Bytes(std::vector<uint8_t>()),
> String(std::string())
> { }
> };
> Note the C++ type of the field Null is $Undefined$ which is obviously
> invalid/won't compile.
--
This message was sent by Atlassian JIRA
(v6.3.15#6346)