[eluser]toopay[/eluser]
I'm affraid, you must include all files which needed by your controller, like session class, database class, languange file etc, since CI super object is no longer exist in 404 controller.
For languange files, thats a obvious reason, since we need display different languange for different user, but why you need to use session here? I mean, clearly, 404 is the http response which generated if someone want to access something that not exist, so the content that should be generated is only some simple message that tell the user no content for that url, right? Why you need to process session and other stuff? ;-)