rjmccall added inline comments.

================
Comment at: clang/lib/Sema/SemaType.cpp:7460
+      // the initializing expression type during the type deduction.
+      (T->isUndeducedAutoType() && IsPointee) ||
       // OpenCL spec v2.0 s6.9.b:
----------------
Okay, I understand why you're doing this now, and it makes sense.  I would like 
to propose changing the entire way `deduceOpenCLImplicitAddrSpace` works.  Why 
don't we do it more like how ObjC ARC infers its implicit ownership qualifiers:

- In SemaType, we add the default address space to non-qualified, 
non-dependent, non-undeduced-`auto` pointees when parsing a pointer or 
reference type.
- In SemaType, we add the default address space to non-qualified pointees when 
building a pointer or reference type.
- We add the default address space at the top level when when building a 
variable.

Then all of this context-specific logic where we're looking at different 
declarator chunks and trying to infer the relationship of the current chunk to 
the overall type being parsed can just go away or get pushed into a more 
appropriate position.


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

https://reviews.llvm.org/D65744



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

Reply via email to