find の挙動が微妙に望ましくない

findutils-4.5.10 の find コマンドなのですが、微妙に動作が納得できないので備忘録。
なにもないディレクトリで、

$ touch foo bar

でファイルを作り、fooとbarという名前を出力するには

$ find . -name foo -or -name bar
./bar
./foo

で良いのですが、これに -print や -exec で処理しようとすると、

$ find . -name foo -or -name bar -print
./bar

のようになってしまい、全部が表示されない。configure オプションも特に指定していないのに、これで良いのかな?

POSIX の関係で -or の前が真になると、後は評価されないというのはわかるけど、それ以降のすべてのファイルについて評価されなくなるってのは、代替方法がないと困るんだよな。