No announcement yet.

"Previous declare - parameter mismatch"??

  • Filter
  • Time
  • Show
Clear All
new posts

  • Paul Squires
    Hi Scott,

    The DLL is an xbase/btree system in the same vein as Bullet and

    The strings in question are not ASCIIZ strings. They are usually
    dimensioned like DIM CachedNode AS STRING * %MAX_NODE_SIZE

    All the functions that accept these types of strings are have
    parameters like, FUNCTION GarbageNode(TheNode AS STRING * %MAX_NODE_SIZE)

    The DECLARES for the functions and subs are also defined using the

    The DLL works perfectly with 1024. It will also *compile* using
    various other numbers (e.g. 1200, 1300) but when run it does
    not produce the correct results - very wierd.

    I'll continue developing using the 1024 node size, but in the
    back of my mind this is nagging at me!


    Paul Squires
    [email protected]

    Leave a comment:

  • Scott Turchin
    Node type huh? Is this a host connection application?

    Could you have dimensioned an Asciiz value smaller than 2048 but larger than 1024 and ar4e passing that Asciiz value to a function that is expecting less?

    mailto:[email protected][email protected]</A>

    Leave a comment:

  • Paul Squires
    started a topic "Previous declare - parameter mismatch"??

    "Previous declare - parameter mismatch"??

    Hi everybody,

    I'm almost finished my first PB/DLL 6 project but I have come
    across a strange error that I can not figure out. I have an
    integer equate %MAX_NODE_SIZE that I set to size 1024. Throughout
    the source I dimension fixed length strings using the equate.
    Some of the strings are in TYPES and others are in the parameters
    to function and sub calls. All my DECLARE statements also use
    the equate.

    Everything works perfectly until I change the equates value. I
    thought I would try increasing the node size to see the result
    on performance. When I do this I get an error 481 that reads
    "Parameter mismatch with prior declaration". The Help manual
    explains this error as "There is a previous declare declaration
    with a parameter mismatch."

    The error points to an unrelated function that doesn't
    even use the equate in the parameter list or the code. If I REM
    out the declare for that function then the same error occurs but
    at a different function (and so on and so on).

    I tried search/replace to update all references to 1024 with
    2048 and the same error occurs.

    I can't post the source and I know this explanation does not
    seem very coherent but I hope someone may have encountered this
    senario before.

    Any suggestions would be greatly appreciated.


    Paul Squires
    [email protected]