The first two definitions are invalid since the ... can only occur at the topmost level, not nested inside multiple parentheses, so A and B are invalid definitions. See ITU-T X.680 clause 50.1 and 50.5.
C is also technically invalid since the value 120 is not within the base range of 1..64 for the "parent type". If you change the 120 to 64, then the effective constraint is as follows:
C ::= INTEGER (1..32, ..., 33..64)
ITU-T X.680 clause 50.10 has the following:
50.10 If a subtype constraint is serially applied to a parent type which is extensible through the application of an extensible constraint, value notation used within it shall not reference values that are not in the extension root of the parent type. The result of the second (serially applied) constraint is defined to be the same as if the constraint had been applied to the parent type without its extension marker and possible extension additions.