[PATCH] D33735: [DebugInfo] Add ThisOrSelf attribute for emission of FlagObjectPointer.

Alexey Bataev via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Wed Jun 7 07:48:58 PDT 2017


ABataev added inline comments.


================
Comment at: include/clang/AST/Decl.h:901
+    /// member functions.
+    unsigned ImplicitParamKind : 3;
   };
----------------
aaron.ballman wrote:
> It's a bit strange to me that the non-parameter declaration bits now have a field for implicit parameter information. Why here instead of `ParmVarDeclBits`?
Actually, `ImplicitParamDecl` already uses some bits from the `NonParmVarDeclBitfields`, at least it may be marked as `ARCPseudoStrong` for ObjC. That's why I had to reuse `NonParmVarDeclBitfields` part.


================
Comment at: include/clang/AST/Decl.h:1383
 class ImplicitParamDecl : public VarDecl {
+public:
+  /// Defines the kind of the implicit parameter: is this an implicit parameter
----------------
aaron.ballman wrote:
> Rather than use three access specifiers, can you reorder this?
> ```
> class ... {
>   void anchor() override;
> 
> public:
>   ...
> };
> ```
Ok


================
Comment at: lib/CodeGen/CGOpenMPRuntime.cpp:3467
   ImplicitParamDecl TaskPrivatesArg(
-      C, /*DC=*/nullptr, Loc, /*Id=*/nullptr,
-      C.getPointerType(PrivatesQTy).withConst().withRestrict());
+      C, C.getPointerType(PrivatesQTy).withConst().withRestrict(),
+      ImplicitParamDecl::Other);
----------------
aaron.ballman wrote:
> This no longer sets the SourceLocation -- is that intended?
Just missed this after some reworks, will return it back


https://reviews.llvm.org/D33735





More information about the cfe-commits mailing list