Mention that the lack of #define private affects the I/O read rules
The Info function already add a new line
Remove debug output
Add reminder note
In GetPartiallyDesugaredNameWithScopeHandling add suport for trailing star
Remove obsolete code (strstream)
Reduce unnucessary type recreation
Avoid unnecessary string alloc
Keep Long64_t and convert 'long long' into Long64_t
extend comment
Introduce ROOT::TMetaUtils::GetNormalizedType
Reduce spurrious type creation
Normalize consistently 'long long' into Long64_t
Introduce TClingLookupHelper::ExistingTypeCheck.

It helps avoiding cling/clang search (and thus autoparsing) when we already know about the
type.
Extent TClingLookupHelper::IsDeclaredScope to also tell if the namespace is inlined
Improve TClingLookupHelper::GetPartiallyDesugaredNameWithScopeHandling.

Use GetNormalizeType.  Clean more of the output (spaces and unwanted std::) in a more general way.
Small performance improvement
TClassEdit once again strips inline namespace ... but only when known.

Since we rely much more on TClassEdit to normalize the name (in part to avoid
autoparsing), we need to strip the inline namespace whenever possible.

This feature had been remove by commit 4480ef431445de8383e27b828a1e907f0e03f150.
We reintroduce it we a twist where rather than guessing by looking at the name,
we look for the scope in clang type database and ask whether the scope
exist and is inline.  We limit this search to immediate sub scope of std and
which are not templated, we also cache the result.
In TClassEdit::GetNormalizedName, proper treat the case where the input itself is a typedef
Complete rewrite of TClassEdit::ResolveTypedef.

Properly resolve all typedefs including those used a part of the scope.

The implementation tries to reduce the number of memory copy (in cases where
there is no typedef, there should not be any copy or string creation ... this is
not yet the case in all cases as the underlying routines (GetPartiallyDesugaredType
for example) sometimes returns a 'new'/'different' type eventhough there is
no effective differences.  This implementations deals better with nested
typedef, mix of const, pointer and references and is more consistent with
spaces.
Merge branch 'TClassEdit::ResolveTypedef renewal'