OK, so I know this is nothing to do with KControls. Its all about Cocoa.
Bring a clean svn lazarus down, trunk.
Compile - make CPU_TARGET=i386
Open the newly compiled lazarus - open ./lazarus.app --args "--pcp=~/.laz-svn"
Set it up, create a project, set that project to Cocoa widgets, x86_64
Compile and test, all OK.
Exit Lazarus and then, from commandline (in the new laz dir)-
touch lcl/interfaces/cocoa/cocoawinapi.inc
Open up lazarus, open the same project, try and build it again. You'll get -
Compile package LCL 1.9: Exit code 256, Errors: 28, Hints: 18
cocoaint.pas(137,14) Note: Virtual method "PromptUser(const AnsiString;const AnsiString;LongInt;PLongint;LongInt;LongInt;LongInt):LongInt;" has a lower visibility (protected) than parent class TWidgetSet (public)
...
cocoaint.pas(374,39) Error: identifier idents no member "lclisHandle"
cocoaint.pas(413,26) Error: identifier idents no member "lclGetCallback"
...
cocoawinapi.inc(102,22) Error: identifier idents no member "lclContentView"
cocoawinapi.inc(772,20) Error: identifier idents no member "lclSetEnabled"
and so on ....