func hasReturnType(a AST) bool {
	switch a := a.(type) {
	case *Template:
		return !isCDtorConversion(a.Name)
	case *TypeWithQualifiers:
		return hasReturnType(a.Base)
	case *MethodWithQualifiers:
		return hasReturnType(a.Method)
	default:
		return false
	}
}
func hasReturnType(a AST) bool {
	switch a := a.(type) {
	case *Template:
		return !isCDtorConversion(a.Name)
	case *TypeWithQualifiers:
		return hasReturnType(a.Base)
	case *MethodWithQualifiers:
		return hasReturnType(a.Method)
	default:
		return false
	}
}
func hasReturnType ( a AST ) bool { switch a := a . ( type ) { case * Template : return ! isCDtorConversion ( a . Name ) case * TypeWithQualifiers : return hasReturnType ( a . Base ) case * MethodWithQualifiers : return hasReturnType ( a . Method ) default : return false } }
// hasReturnType returns whether the mangled form of a will have a
// return type.
hasReturnType returns whether the mangled form of a will have a return type .