junaire added inline comments.

================
Comment at: clang/test/Interpreter/pretty-print.cpp:107
+p2
+// CHECK-NEXT: (std::_MakeUniq<int>::__single_object &) std::unique_ptr -> 
[[Addr:@0x.*]]
+
----------------
junaire wrote:
> Hi @mizvekov, do you have a clue about why it doesn't print the correct type? 
> So in `ValuePrinter.cpp:50` I dumped the type it shows:
> ```
> AutoType 0x62d000533c00 'typename _MakeUniq<int>::__single_object' sugar
> `-ElaboratedType 0x62d000450500 'typename _MakeUniq<int>::__single_object' 
> sugar
>   `-TypedefType 0x62d0004501e0 'std::_MakeUniq<int>::__single_object' sugar
>     |-Typedef 0x62d000450160 '__single_object'
>     `-ElaboratedType 0x62d000450100 'unique_ptr<int>' sugar
>       `-TemplateSpecializationType 0x62d0004500b0 'unique_ptr<int>' sugar 
> unique_ptr
>         |-TemplateArgument type 'int':'int'
>         | `-SubstTemplateTypeParmType 0x62d00044fd50 'int' sugar typename 
> depth 0 index 0 _Tp
>         |   |-ClassTemplateSpecialization 0x62d00044fa08 '_MakeUniq'
>         |   `-BuiltinType 0x621000019220 'int'
>         `-RecordType 0x62d000450080 'class std::unique_ptr<int>'
>           `-ClassTemplateSpecialization 0x62d00044ff70 'unique_ptr'
> ```
> 
> But in Cling it only has the RecordType. Do you think it's affected by your 
> type resugaring patches?
Looks like below diff fixes this:
```
diff --git a/clang/lib/Interpreter/InterpreterUtils.cpp 
b/clang/lib/Interpreter/InterpreterUtils.cpp
index 05e6be0e9df2..da5da55e8e95 100644
--- a/clang/lib/Interpreter/InterpreterUtils.cpp
+++ b/clang/lib/Interpreter/InterpreterUtils.cpp
@@ -425,7 +425,7 @@ QualType GetFullyQualifiedType(QualType QT, const 
ASTContext &Ctx) {
   // Strip deduced types.
   if (const auto *AutoTy = dyn_cast<AutoType>(QT.getTypePtr())) {
     if (!AutoTy->getDeducedType().isNull())
-      return GetFullyQualifiedType(AutoTy->getDeducedType(), Ctx);
+      return 
GetFullyQualifiedType(AutoTy->getDeducedType().getDesugaredType(Ctx), Ctx);
   }
```


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D146809

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

Reply via email to