in semanticdb-find-translate-path-includes-default you use the function `buffer-local-value' - XEmacs does not have this!
My suggestion:
use something as ECB has for its own needs:
(defun ecb-buffer-local-value (sym buffer)
  "Get the buffer-local value of variable SYM in BUFFER. If there is no
buffer-local value in BUFFER then the global value of SYM is used."
  (if (fboundp 'buffer-local-value)
      (buffer-local-value sym buffer)
    (or (cdr (assoc sym (buffer-local-variables buffer)))
          (set-buffer buffer)
          (symbol-value sym)))))
Then this code will work with XEmacs to - otherwise XEmacs complains an error about using an undefined function!

Klaus Berndl / Capgemini sd&m / München
Senior-Berater / Öffentlicher Sektor
Tel: +49 89 63812-392 / Fax: +49 89 63812-444 /
Mobil: +49 162 2842051 / klaus.berndl@capgemini-sdm.com
Capgemini sd&m AG, Carl-Wery-Straße 42, 81739 München

Vorstand: Edmund Küpper (Vorsitzender), Burkhard Kehrbusch, Rüdiger Azone,
Dr. Uwe Dumslaff, Kai Grambow, Dr. Michael Rading, Josef Ranner
Aufsichtsrat: Pierre Hessler (Vorsitzender)
Sitz und Amtsgericht: München HRB 126057