In general when structuring your code, the performance penalty for other targets when the conditions that can be easily tested are not met should pretty much be close to nonexistent. I would suggest keeping that in mind when submitting revisions.
Uploaded the wrong patch last time. This time I actually have the change for marking the pointers const.
In my original output, you could still see one bit different on our this pointer records and MSVC's. Specifically, they mark them as const. I went ahead and did the same thing in this update.
@aaron.ballman I don't actually have the commit bit, can you commit this, or are we waiting for further review?
- Update code to take into account what's wrong when fd==-1
- Add a test for GCOV_PREFIX
I don't understand the point here. Why would you want to include pre-processing-only commands in the compilation database?
Addressed comments, fixed tests
Is this Linux-only?
I'm implementing the Version Reference for #30241 and find that some info emitted from option -x are crowded. If this not ok, I will revert this change.
It would be great to have a way to extend the list of (possibly non-stl) types to check. But I do understand that the analyzer does not have a great way to set such configuration options right now.
Do you envision room for another attribute here? I.e., a class attribute that says "this object is always unsafe to use after move, unless a method annotated with reinitializes is called"?
It looks OK, but wouldn't we be better off trying to improve the truncation lowering?
Applied comments and extended condition with 'ShiftAmount == 8'
The "moved-from" terminology we adopt here still feels a bit weird to me, but i don't have a better suggestion, so i just removed the single-quotes so that to at least feel proud about what we have.
I am personally fine with this terminology, this checker corresponds to the cert rule EXP63-CPP. Do not rely on the value of a moved-from object, and moved from is also used in many places in CppCoreGuidelines.