Подробности

[В начало]

Проблема в стандарте № S0055

Краткое описание

Отсутствие ограничений на изменение структуры дерева функцией action.

Подробное описание

В стандарте нет ограничения, чтобы функция action, передаваемая в качестве параметра в twalk(), не изменяла структуры дерева, то есть не вызывала tsearch() и tdelete(). Тем не менее, такое требование выглядит логичным, особенно для реализаций, построенных на основе сбалансированных деревьев.

Раздел стандарта

The Open Group Base Specifications Issue 6 IEEE Std 1003.1, 2004 Edition (SUS 3.0), System Interfaces, description of functions <nobr>tsearch()</nobr>, <nobr>tdelete()</nobr>, <nobr>tfind()</nobr>, <nobr>twalk()</nobr>.

Способы устранения

Предлагается добавить в требования стандарта ограничение на функцию action: "функция action не должна изменять структуру дерева". Либо явно указать, что стандарт не накладывает такого ограничения.

Принято

POSIX aardvark,
Request Number 143

[В начало]