[Search for users] [Overall Top Noters] [List of all Conferences] [Download this site]

Conference azur::mcc

Title:DECmcc user notes file. Does not replace IPMT.
Notice:Use IPMT for problems. Newsletter location in note 6187
Moderator:TAEC::BEROUD
Created:Mon Aug 21 1989
Last Modified:Wed Jun 04 1997
Last Successful Update:Fri Jun 06 1997
Number of topics:6497
Total number of notes:27359

1461.0. "PROBLEM: FCL handling of default" by BYBLOS::TAMER () Fri Sep 06 1991 12:41

Using DECmcc V1.1,

I have a directive with one required argument and two optional arguments with
default values (for the optional arguments) defined in the dictionary. When I 
specify the two optional arguments with no values, the FCL seems to handle the 
encoding of defaults in an inconsistent way depending on the ORDER that the 
three arguments were specified in!

Examples follow:

MSL definition of the directive:
(*********************************************************************)
       DIRECTIVE Connect = 18 :
           DIRECTIVE-TYPE = ACTION,
           DISPLAY        = TRUE,
           SYMBOL         = DIR_CONNECT,
           CATEGORIES     = (CONFIGURATION),

           REQUEST

                (* corresponds to QMA_C_REPOSITORY *)
                ARGUMENT Repository = 11 : FullName
                   ECHO    = TRUE,
                   DISPLAY = TRUE,
                   REQUIRED= TRUE,
                   DEFAULT = NO DEFAULT,
                   SYMBOL  = ARG_SERVER_CON_REPOS
                END ARGUMENT Repository ;

                (* corresponds to QMS_C_LOG_BUFFER_SIZE *)
      		ARGUMENT MaxSize Log Buffer = 8025 : Unsigned32
                   ECHO         = TRUE,
                   DISPLAY      = TRUE,
                   REQUIRED     = FALSE,
                   UNITS        = Pages,
                   DEFAULT      = 2000,
                   SYMBOL       = ARG_QMS_REPOS_MAX_LOGBUF
                END ARGUMENT MaxSize Log Buffer ;

                (* corresponds to QMS_C_REP_CACHE_SIZE *)
                ARGUMENT MaxSize Repository Cache = 8029 : Unsigned32
                   ECHO         = TRUE,
                   DISPLAY      = TRUE,
                   REQUIRED     = FALSE,
                   UNITS        = Pages,
                   DEFAULT      = 1000,
                   SYMBOL       = ARG_QMS_REPOS_MAX_CACHE
                END ARGUMENT MaxSize Repository Cache ;

           END REQUEST ;
(*******************************************************************)
NOTE: Below I am showing the IN_P dump section turned on by the MCC_FCL_PM_LOG
      logical.

 
DECQ_manager> connect qms_cd .cd server s1  MaxSize Repository Cache, -
_DECQ_manager>   MaxSize Log Buffer, Repository =.repository.test


ILV dump of IN_P:

[  0 ] (
    [  8029 ]     03 e8
    [  8025 ]     07 d0
    [  11 ]     aa 00 04 00 09 27 00 d3 9f 59 21 ba 93 00 14 00 01 0a 72 65
    70 6f 73 69 74 6f 72 79 01 04 74 65 73 74 00 00
    )

(******
Above, The FCL fetched both default values from the dictionary.
This also violates the SRM, I believe.
********)


DECQ_manager> connect qms_cd .cd server s1  MaxSize Repository Cache,-
_DECQ_manager>  Repository =.repository.test,  MaxSize Log Buffer

 ILV dump of IN_P:

[  0 ] (
    [  8029 ]     03 e8
    [  11 ]     aa 00 04 00 09 27 00 d3 9f 59 21 ba 93 00 14 00 01 0a 72 65
    70 6f 73 69 74 6f 72 79 01 04 74 65 73 74 00 00
    [  8025 ] (
        [  5 ]
        )
    )

(******
Above, The FCL fetched the default value from the dictionary of the first 
optional argument and flaged a default for the other (last) optional argument.
********)

DECQ_manager> connect qms_cd .cd server s1  Repository =.repository.test,-
_DECQ_manager>  MaxSize Log Buffer,  MaxSize Repository Cache


ILV dump of IN_P:

[  0 ] (
    [  11 ]     aa 00 04 00 09 27 00 d3 9f 59 21 ba 93 00 14 00 01 0a 72 65
    70 6f 73 69 74 6f 72 79 01 04 74 65 73 74 00 00
    [  8025 ]     07 d0
    [  8029 ] (
        [  5 ]
        )
    )


(* and swapping positions of the last two arguments *)

DECQ_manager> connect qms_cd .cd server s1  Repository =.repository.test,-
_DECQ_manager> MaxSize Repository Cache, MaxSize Log Buffer

ILV dump of IN_P:

[  0 ] (
    [  11 ]     aa 00 04 00 09 27 00 d3 9f 59 21 ba 93 00 14 00 01 0a 72 65
    70 6f 73 69 74 6f 72 79 01 04 74 65 73 74 00 00
    [  8029 ]     03 e8
    [  8025 ] (
        [  5 ]
        )
    )


Thanks,
Phil
T.RTitleUserPersonal
Name
DateLines
1461.1FCL broken, in toolkit rel notes (or should be)GOSTE::CALLANDERSat Sep 07 1991 14:538
    known problem, we still haven't fixed it yet (and you are right
    about the SRM non-compliance when the value is filled in - but this
    only change in the v1.1 SRM, V1.0 had the PM pass the value).
    
    jill