if (designator instanceof ICASTFieldDesignator) {
final ICASTFieldDesignator fieldDes = (ICASTFieldDesignator) designator;
scribe.print('.');
fieldDes.getName().accept(visitor);
} else if (designator instanceof ICASTArrayDesignator) {
final ICASTArrayDesignator arrDes = (ICASTArrayDesignator) designator;
scribe.print('[');
arrDes.getSubscriptExpression().accept(visitor);
scribe.print(']');
} else if (designator instanceof IGCCASTArrayRangeDesignator) {
// IGCCASTArrayRangeDesignator new_name = (IGCCASTArrayRangeDesignator) designator;
// TODO IGCCASTArrayRangeDesignator Bespiel zu parsen bringen
throw new UnsupportedOperationException("Writing of GCC ArrayRangeDesignator is not yet implemented"); //$NON-NLS-1$