Bug 401955

Summary: exported CompileState.h includes non exported opcodes.h and bytecodes/opcodes.h
Product: [Frameworks and Libraries] frameworks-kjs Reporter: Sandro Knauß <sknauss>
Component: generalAssignee: Bernd Buschinski <b.buschinski>
Status: RESOLVED UNMAINTAINED    
Severity: major CC: christoph, kdelibs-bugs-null
Priority: NOR    
Version First Reported In: unspecified   
Target Milestone: ---   
Platform: Compiled Sources   
OS: Linux   
Latest Commit: Version Fixed/Implemented In:
Sentry Crash Report:

Description Sandro Knauß 2018-12-10 13:33:22 UTC
The exported CompileState.h includes two non exported files: opcodes.h and bytecodes/opcodes.h.

This breaks abi-complience-checker, so we can't create an ABI for KJS. See 
https://phabricator.kde.org/T3689 for more information about abi creation.
Comment 1 Christoph Feck 2018-12-21 02:29:09 UTC
Does CompileState.h actually have exported API? My understanding is that it is internal, and only kjs/api is exported.
Comment 2 Sandro Knauß 2018-12-28 21:12:16 UTC
(In reply to Christoph Feck from comment #1)
> Does CompileState.h actually have exported API? My understanding is that it
> is internal, and only kjs/api is exported.

So far I checked the file, it looks like there is no public API (no exported tag ). But if this is intended to be an internal header or not, I can't tell. As there are no bugs about CompileState.h being unusable, it is a good sign, that this file is actually an internal one. Don't export the file at all seems like a good fix.
Comment 3 Christoph Cullmann 2023-07-03 20:20:02 UTC
KJS was already in pure maintenance mode in kf5, for kf6 it got removed,
there will be no future work spend on this beside critical security issues, if
at all.