Hello
It is late and I have been on this for 10+ hours so maybe I am having delusions.

I want to do something seemingly simple : I want to change the allowed_values of a Text field presented as a list of choices (in fact I want to change the choices before the field is rendered).

At First, Drupal Basically seemed to either totally ignore my changes to its fields or throw at me an "illegal value" error when using the field.
I tried changing the allowed_values keys wherever I found them ($form, $form_state, #field_info, etc ...) to no avail.

Then, I did find this (http://drupal.org/node/339730#comment-2871966) from "Can form_alter() change the value of an optionwidgets_select?", but

a) changing in hook_form_alter $form['#field_info']['MYFIELDNAME']['allowed_values']="test|ouille"; is superbly ignored :(

b) trying to put a pre render callback $form['MYFIELDNAME']['#pre_render'] = array('MYFIELDNAME_pre_render') does not work :

'MYFIELDNAME_pre_render' is NEVER called (as a dpm('trace') in it shows).

Even stranger if I write $form['MYFIELDNAMEXXXXXX']['#pre_render'] = array('MYFIELDNAME_pre_render') where MYFIELDNAMEXXXXXX is a non existent field, MYFIELDNAME_pre_render IS called ....

Somehow the general logic of calling hook_#pre_render seems inhibited for my field

Can somebody point me in the right direction to understand what is happening and/or successfully change the "allowed values" of a text widget presented as a list, and hence allow to customize the choice list ?

Thanks a lot for you time.

PS : doing a dpm($form['MYFIELDNAME]['#pre_render']) before the assignment shows that $form['MYFIELDNAME]['#pre_render'] is empty, no other functions hides there before I try to add mine.

PS2 : sorry for the poor English and probably bad explanations I am a bit at the end of my rope here.