run script errors

if I use

set x_list to {"a"}
run script "Web:Temporary:testscript" with parameters x_list

to call

on run (p_list)
	display dialog item 1 of p_list
end run

it works for me. Also this works:

set x_list to {"a", "b", "c"}
run script "Web:Temporary:testscript" with parameters x_list

and

set x_list to "a"
run script "Web:Temporary:testscript" with parameters x_list

so I think that instead of the parameter pass being in error, sometime later the code attempts wrongly to use the data passed to it; this is something I cannot diagnose without seeing the code.

I have had problems in the past especially when going from an OS less than 9 to OS 9. Below is a portion of code that may shed some light for you.

if OSver < 9 then
tell application AppToUse
launch
set {AllScreenList, ErrorList, StList} to ¬
(run {PBarPage, EPage, PWidth, Screening, OldScreening, Fbline, Lbline, SpecNum, ToScreen, StartStyle, TopOffset, ContPgTop, TbOrBl, EndStyle, BotOffset, ContPgBot, AllScreenList, ErrorList})
end tell --application
else
set {AllScreenList, ErrorList, StList} to run script AppToUse ¬
with parameters {PBarPage, EPage, PWidth, Screening, OldScreening, Fbline, Lbline, SpecNum, ToScreen, StartStyle, TopOffset, ContPgTop, TbOrBl, EndStyle, BotOffset, ContPgBot, AllScreenList, ErrorList}
end if

And the called script has lines as below

on run 
{PBarPage, EPage, PWidth, Screening, OldScreening, Fbline, Lbline, SpecNum, ToScreen, StartStyle, TopOffset, ContPgTop, TbOrBl, EndStyle, BotOffset, ContPgBot, AllScreenList, ErrorList} lots of code return {AllScreenList, ErrorList, StList}
end run