ziqingluo-90 added inline comments.

================
Comment at: clang/lib/Analysis/UnsafeBufferUsage.cpp:2085
       continue;
     }
     for (const auto &F : Fixables) {
----------------
I changed the rest of this function drastically so let me explain what I did.

The table `FixItsForVariable` is initiated with variables whose declarations 
and associated `Fixable`s can be fixed.  So if a variable is not in the table,  
either 1) its declaration cannot be fixed or 2) one of its `Fixable`s cannot be 
fixed.   Then, the table is further reduced by removing elements such that at 
least one of its' group members satisfies 1) or 2).
Eventually, the table  `FixItsForVariable` can be used to determine if a 
variable is `ImpossibleToFix` (so we no longer need this flag).   
`FixItsForVariable[V]`, if `V` exists there,  is a collection of fix-its for 
`V`'s declaration and all `Fixable`s associated to `V`.

With parameters being fixed, we also generate function overloads as fix-its for 
the parameters.  These overload fix-its are "shared" by the parameters.  It 
means that these fix-its will be added for the group where the parameters 
belong to, instead of being added to `FixItsForVariable[PV]` for each such 
parameter `PV`.

So finally, for a variable `V`, `FinalFixItsForVariable[V]` is a collection of 
fix-its for the whole group where `V` is at. 




================
Comment at: clang/lib/Analysis/UnsafeBufferUsage.cpp:2264
+  // variable `x` implicates fixing `y`:
   DepMapTy PtrAssignmentGraph{};
+
----------------
How about changing the variable name to `PtrImplicationGraph`?  For two 
variables `V` and `W`,  if `W` is in `PtrImplicationGraph[V]`, it means fixing 
`V` implicates fixing `W`, right?


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D153059/new/

https://reviews.llvm.org/D153059

_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to