[llvm-dev] Spurious cast warning for C++? (original) (raw)
mats petersson via llvm-dev llvm-dev at lists.llvm.org
Mon Apr 10 02:39:40 PDT 2017
- Previous message: [llvm-dev] Spurious cast warning for C++?
- Next message: [llvm-dev] [cfe-dev] Spurious cast warning for C++?
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
What does "have no effect" mean in this case? In my mind, there are many casts that have no effect - other than allowing the code to compile, which is quite an important effect in itself (e.g. casting a 32-bit unsigned to a pointer on your typical 32-bit system).
Are you seeking to warn for:
int a; int b;
a = (int) b;
and similar things?
-- Mats
On 9 April 2017 at 20:35, Craig Topper via llvm-dev <llvm-dev at lists.llvm.org
wrote:
This is question is probably better on the clang cfe-dev list.
On Sun, Apr 9, 2017 at 12:01 PM Brennan Vincent via llvm-dev <_ _llvm-dev at lists.llvm.org> wrote:
How difficult would it be to add a warning to Clang when the programmer performs a cast that provably has no effect?
A particular case I have in mind is someone getting confused and calling std::move on an argument to a copy-constructor for a class that doesn't implement move semantics. I would be grateful if someone either (1) told me why this is difficult/impossible, or (2) gave me some pointers to where I could start trying to implement it...
LLVM Developers mailing list llvm-dev at lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev
-- ~Craig
LLVM Developers mailing list llvm-dev at lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20170410/3391c93b/attachment.html>
- Previous message: [llvm-dev] Spurious cast warning for C++?
- Next message: [llvm-dev] [cfe-dev] Spurious cast warning for C++?
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]