authorgravatar for thatlemon@gmail.comLemonBoy <thatlemon@gmail.com> 2019-02-17 14:07:14+01:00
committergravatar for andrew@ziglang.orgAndrew Kelley <andrew@ziglang.org> 2019-02-17 14:40:01-05:00
log6cf38369d216ef676a21fc014a869042a924029d
tree84d338c5af2642a05f9bb2b71bc5a92462860475
parent8d2a902945ef97f28152c3d5a68bb974809c8539

Silence gcc8 class-memaccess warnings

Use an explicit cast to tell gcc we know what we're doing.

2 files changed, 7 insertions(+), 7 deletions(-)

src/translate_c.cpp+3-3
......@@ -129,17 +129,17 @@ static AstNode *trans_bool_expr(Context *c, ResultUsed result_used, TransScope *
129129
130130static ZigClangSourceLocation bitcast(clang::SourceLocation src) {
131131 ZigClangSourceLocation dest;
132 memcpy(&dest, &src, sizeof(ZigClangSourceLocation));
132 memcpy(&dest, static_cast<void *>(&src), sizeof(ZigClangSourceLocation));
133133 return dest;
134134}
135135static ZigClangQualType bitcast(clang::QualType src) {
136136 ZigClangQualType dest;
137 memcpy(&dest, &src, sizeof(ZigClangQualType));
137 memcpy(&dest, static_cast<void *>(&src), sizeof(ZigClangQualType));
138138 return dest;
139139}
140140static clang::QualType bitcast(ZigClangQualType src) {
141141 clang::QualType dest;
142 memcpy(&dest, &src, sizeof(ZigClangQualType));
142 memcpy(&dest, static_cast<void *>(&src), sizeof(ZigClangQualType));
143143 return dest;
144144}
145145
src/zig_clang.cpp+4-4
......@@ -140,24 +140,24 @@ static_assert((clang::UnaryOperatorKind)ZigClangUO_Real == clang::UO_Real, "");
140140static_assert(sizeof(ZigClangSourceLocation) == sizeof(clang::SourceLocation), "");
141141static ZigClangSourceLocation bitcast(clang::SourceLocation src) {
142142 ZigClangSourceLocation dest;
143 memcpy(&dest, &src, sizeof(ZigClangSourceLocation));
143 memcpy(&dest, static_cast<void *>(&src), sizeof(ZigClangSourceLocation));
144144 return dest;
145145}
146146static clang::SourceLocation bitcast(ZigClangSourceLocation src) {
147147 clang::SourceLocation dest;
148 memcpy(&dest, &src, sizeof(ZigClangSourceLocation));
148 memcpy(&dest, static_cast<void *>(&src), sizeof(ZigClangSourceLocation));
149149 return dest;
150150}
151151
152152static_assert(sizeof(ZigClangQualType) == sizeof(clang::QualType), "");
153153static ZigClangQualType bitcast(clang::QualType src) {
154154 ZigClangQualType dest;
155 memcpy(&dest, &src, sizeof(ZigClangQualType));
155 memcpy(&dest, static_cast<void *>(&src), sizeof(ZigClangQualType));
156156 return dest;
157157}
158158static clang::QualType bitcast(ZigClangQualType src) {
159159 clang::QualType dest;
160 memcpy(&dest, &src, sizeof(ZigClangQualType));
160 memcpy(&dest, static_cast<void *>(&src), sizeof(ZigClangQualType));
161161 return dest;
162162}
163163