Was willst du dann mit dem Pointer?
Dieser verweist nur auf den Speicher.
Was sich dahinter verbirgt, definierst du wiederum mit deiner based-DS und diese Definition entscheidet über den Inhalt ab dem Pointer bzw. ggf. einen MCH-Fehler.

Daher noch mal die Frage: was ist das Ziel des Ganzen?

Für Funktionen und Prozeduren übergibt man Werte und Zeichen. Die Maximalausprägung wird per Deklaration festgelegt und bei CONST/VALUE erfolgt auch eine Typanpassung.
Was also willst du mit solchen Konstrukten (außer Fingerübungen) tatsächlich erreichen?