From fc03b894489f39c81f69cd789fd9a08aa5acf91b Mon Sep 17 00:00:00 2001 From: Boris Kolpackov Date: Thu, 23 Jan 2020 14:17:22 +0200 Subject: Fix ability to handle C-style arrays as containers --- odb/relational/source.hxx | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) (limited to 'odb/relational/source.hxx') diff --git a/odb/relational/source.hxx b/odb/relational/source.hxx index 681323a..e986cd8 100644 --- a/odb/relational/source.hxx +++ b/odb/relational/source.hxx @@ -5327,9 +5327,14 @@ namespace relational if (!ma.synthesized) os << "// From " << location_string (ma.loc, true) << endl; + // Note that here we don't decay arrays. + // + const string& ref_type ( + member_ref_type (m, call_ != load_call, "v", false /* decay */)); + // VC++ cannot grok the constructor syntax. // - os << member_ref_type (m, call_ != load_call, "v") << " =" << endl + os << ref_type << " =" << endl << " "; // If this member is const and we have a synthesized direct @@ -5338,7 +5343,7 @@ namespace relational // bool cast (call_ == load_call && ma.direct () && const_member (m)); if (cast) - os << "const_cast< " << member_ref_type (m, false) << + os << "const_cast< " << member_ref_type (m, false, "", false) << " > (" << endl; os << ma.translate (obj_prefix_); -- cgit v1.1