305 let |
305 let |
306 val _ = priority ("Loading theory " ^ quote name ^ required_by " " initiators); |
306 val _ = priority ("Loading theory " ^ quote name ^ required_by " " initiators); |
307 val (pos, text, files) = |
307 val (pos, text, files) = |
308 (case get_deps name of |
308 (case get_deps name of |
309 SOME {master = SOME (master_path, _), text as _ :: _, files, ...} => |
309 SOME {master = SOME (master_path, _), text as _ :: _, files, ...} => |
310 (Position.path master_path, text, files) |
310 (Path.position master_path, text, files) |
311 | _ => error (loader_msg "corrupted dependency information" [name])); |
311 | _ => error (loader_msg "corrupted dependency information" [name])); |
312 val _ = touch_thy name; |
312 val _ = touch_thy name; |
313 val _ = CRITICAL (fn () => |
313 val _ = CRITICAL (fn () => |
314 change_deps name (Option.map (fn {master, text, parents, files, ...} => |
314 change_deps name (Option.map (fn {master, text, parents, files, ...} => |
315 make_deps upd_time master text parents files))); |
315 make_deps upd_time master text parents files))); |