- (and (eq (car structure1)(car structure2))
- (ideographic-structure-character= (nth 1 structure1)(nth 1 structure2))
- (ideographic-structure-character= (nth 2 structure1)(nth 2 structure2))
- (if (memq (car structure1) '(?\u2FF2 ?\u2FF3))
- (ideographic-structure-character= (nth 3 structure1)(nth 3 structure2))
- t)))
+ (let (dest-alist ret)
+ (and (setq dest-alist (ideographic-structure-character=
+ (car structure1)(car structure2)))
+ (setq ret (ideographic-structure-character=
+ (nth 1 structure1)(nth 1 structure2)))
+ (setq dest-alist (ids-find-merge-variables dest-alist ret))
+ (setq ret (ideographic-structure-character=
+ (nth 2 structure1)(nth 2 structure2)))
+ (setq dest-alist (ids-find-merge-variables dest-alist ret))
+ (if (memq (car structure1) '(?\u2FF2 ?\u2FF3))
+ (and (setq ret (ideographic-structure-character=
+ (nth 3 structure1)(nth 3 structure2)))
+ (setq dest-alist (ids-find-merge-variables dest-alist ret)))
+ dest-alist))))