"x" kriegt ja erst zur Laufzeit einen Wert, für "RESTORE" (oder auch JUMP oder CALL) muss aber schon der Compiler den konkreten Label-Namen wissen.
Bei MACRO-Statements könnten das einige Compiler in deinem Sinne, aber Bascom gehört da nicht dazu.

Je nachdem, was du machen möchtest :
EDIT: Du müsstest eine Tabelle von deinen Labeln machen und in der kannst du mit Lookup() dann so wie in deinem LOOP arbeiten

Code:
$regfile = "m32def.dat"
$crystal = 16000000
$baud = 9600

Dim Tabaddr As Word
Dim X As Byte

Dim Xxx As Byte

For X = 0 To 4
    Tabaddr = Lookup(x , Lookup_tab)
    Xxx = Cpeek(tabaddr)
    Print Xxx
Next

 End

Lookup_tab:
    Adr2 Dta1
    Adr2 Dta2
    Adr2 Dta3
    Adr2 Dta4
    Adr2 Dta5

Dta1:
    Data 1
Dta2:
    Data 2
Dta3:
    Data 3
Dta4:
    Data 4
Dta5:
    Data 5