rsmith added a comment.
Looks good other than the ODR violation issue.
================
Comment at: include/clang/AST/Expr.h:37-39
+namespace {
+struct EvalInfo;
+}
----------------
It's not appropriate to declare internal-linkage types in headers. This will
create ODR violations, and appears to be unnecessary -- the extra
`EvaluateAsRValue` overload you declare below is not callable outside of
`ExprConstant.cpp`, so can instead be declared as an internal linkage function
in that file.
Repository:
rC Clang
https://reviews.llvm.org/D54355
_______________________________________________
cfe-commits mailing list
[email protected]
http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits