[PATCH] D35068: [analyzer] Detect usages of unsafe I/O functions
    Artem Dergachev via Phabricator via llvm-commits 
    llvm-commits at lists.llvm.org
       
    Sun Mar 24 20:46:15 PDT 2019
    
    
  
NoQ added a comment.
In D35068#1440830 <https://reviews.llvm.org/D35068#1440830>, @koldaniel wrote:
> In D35068#1438498 <https://reviews.llvm.org/D35068#1438498>, @NoQ wrote:
>
> > There seems to be a crash in this code. @koldaniel, would you like to take a look? https://bugs.llvm.org/show_bug.cgi?id=41185
>
>
> Hi,
>
> True, it is a faulty scenario, my question is what should be the way forward? I think in case of built-in functions there should be no warning, since they differ from the deprecated ones which come from the old standard. The only purpose of the assert was to help development and maintenance (if a new function had been added, it should be decided if it is deprecated or unsafe). Returning instead of asserting would solve the problem.
On many platforms such standard C functions are implemented as macros that expand to the respective builtins. I believe there should be no difference in behavior between the normal function and the builtin function. Cf. `test/Analysis/bstring.c`.
Repository:
  rL LLVM
CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D35068/new/
https://reviews.llvm.org/D35068
    
    
More information about the llvm-commits
mailing list