:-multifile and DCG rules being stubborn, predicate fails immediately

OK, well, I’ve stopped doing that pattern as the number of warnings is growing with each one I farm out:

|    Warning: /Users/sean/Documents/code/prolog/the-f-word-project/src/ast/ast.pl:37:
Warning:    Local definition of ast:inst/4 overrides weak import from assign
Warning: /Users/sean/Documents/code/prolog/the-f-word-project/src/ast/ast.pl:38:
Warning:    Local definition of ast:inst/4 overrides weak import from defun
Warning: /Users/sean/Documents/code/prolog/the-f-word-project/src/ast/ast.pl:39:
Warning:    Local definition of ast:inst/4 overrides weak import from defvar
Warning: /Users/sean/Documents/code/prolog/the-f-word-project/src/ast/ast.pl:40:
Warning:    Local definition of ast:inst/4 overrides weak import from emit

So what -is- the best way to break out a large file into smaller ones ?