export -f в .bashrc после обновления до bash 4.3.30 убивает встроенные функции?

export -f в .bashrc после обновления до bash 4.3.30 убивает встроенные функции?

Недавно я обновил свой bash (Mac OS X 10.6.8) с 3.2.48(1) до 4.3.30(1) через macports, и хотя установка, похоже, прошла гладко, два места в моем ~/.bashrc, где я имел, export -f myfunc;похоже, дают некоторые неожиданные результаты. Различные вещи, включая manи more, выдают следующую ошибку:

/bin/sh: line 6: 'BASH_FUNC_myfunc%%': not a valid identifier

В ~/.bashrc были определены две функции, которые позволяли export -fдругому скрипту вызывать эту функцию; ошибка будет ссылаться на первую из них, присутствующую в ~/.bashrc, я понятия не имею, откуда взялся номер строки. Вторичные скрипты работают нормально, а удаление exportфлага -fустраняет ошибку, но явно приводит к невозможности скриптов вызывать функцию.

Что является причиной такого поведения и как мне правильно экспортировать свои функции в bash 4?

Связанный контент