Bug 41743 [MenuMgmt] IContributionManager.remove has undocumented behavior
build 20030820 The doc for IContributionManager.remove says that null will be returned if "this manager has no contribution items with the given id". When I call remove on a menu with an invalid ID I get an IllegalArgumentException instead of a null return value.
bundles/org.eclipse.jface/src/org/eclipse/jface/action/ContributionManager.java
/* (non-Javadoc)
 * Method declared on IContributionManager.
 */
public void removeAll() {
	contributions.clear();
	dynamicItems = 0;
	markDirty();
}
/**
 * Replaces the item of the given identifier with another contribution item.
 * This can be used, for example, to replace large contribution items with
 * placeholders to avoid memory leaks.  If the identifier cannot be found in the
 * current list of items, then this does nothing.  If multiple occurrences are
 * found, then the replacement items is put in the first position and the other
 * positions are removed.
 * @param identifier The identifier to look for in the list of contributions;
 * should not be <code>null</code>.
 * @param replacementItem The contribution item to replace the old item; must
 * not be <code>null</code>.  Use {@link org.eclipse.jface.action.ContributionManager#remove(java.lang.String) remove} if that is what you want to do.
 * @return <code>true</code> if the given identifier can be; <code>
 * @since 3.0
 */
public boolean replaceItem(final String identifier, final IContributionItem replacementItem) {
    if (identifier == null) {
        return false;
    }
    
    final int index = indexOf(identifier);
    if (index < 0) {
        return false;