On Thu, 20 Nov 2014, Chen Gang wrote: > OK, thanks. I guess your meaning is: > > - If the value is small enough to be expressed by type 'int', we should > not provide 'LL'.
Yes - and values not small enough should probably not be accepted by this function. > - If the value is positive number, we should not provide '(' and ')'. Yes. > > Really I think it > > would be better to require that this function is only used for values that > > fit in target int (given appropriate checks on all the users to make sure > > they fit in with that), and put a corresponding assertion there. > > > > Excuse me, I am not quite familiar with "target int", could you provide > more details for it? And if necessary, please help send patch v2 instead > of me: "target int" is the type int on the target, as opposed to on the host (with precision TYPE_PRECISION (integer_type_node)). I think you can use wi::fits_to_tree_p (n, integer_type_node) to test if n is in range for target int. -- Joseph S. Myers jos...@codesourcery.com