XML

kent logo

CO538 Anonymous Questions and Answers Keyword Index

This page provides a keyword index to questions and answers. Clicking on a keyword will take you to a page containing all questions and answers for that keyword, grouped by year.

To submit a question, use the anonymous questions page. You may find the keyword index and/or top-level index useful for locating past questions and answers.

Keyword reference for protocol-inheritance

2009

Question 33 (2009):

Submission reference: IN1835

Hi there the kroc compiler is making weird complaints.

    ?????@?????-???????:~/raptor/private/co538/assessment4$ occbuild --program q7.occ
    Fatal-occ21-q7.occ(75)- unknown tag N_SPROTDEF in pi_valcheck

    *********************************************************************
    * The compiler has detected an internal inconsistency.		    *
    * Please email kroc-bugs@kent.ac.uk with a copy of the code which   *
    * broke the compiler, as this is probably a compiler bug.	    *
    * Please include the KRoC version and any other relevant details.   *
    *********************************************************************

    kroc: /usr/local/kroc/bin/occ21 failed to compile q7.occ to q7.tce

What is this complaining about? any ideas how I fix it?

    ...  code removed

Answer 33:

Protocol extension is only allowed between variant (i.e. CASE) protocols. Your line 75 tries to extend report protocols for phils, forks and security – but only the fork reports has variants. Your definitions are easily corrected – change:

    PROTOCOL SECURITY.REPORT IS INT:

to the single-variant:

    PROTOCOL SECURITY.REPORT
      CASE
        security; INT
    :

and similarly for your phils report protocol.

But our compiler shouldn't have blown up! It should give a decent error report. I'll pass on a bug report - thanks.

Keywords: q7 , protocol-inheritance

Valid CSS!

Valid XHTML 1.0!

This work is licensed under a Creative Commons Attribution-Share Alike 3.0 Unported License.
Last modified Mon May 20 13:50:29 2013
This document is maintained by Fred Barnes, to whom any comments and corrections should be addressed.