Welcome, Guest
Username: Password: Remember me
  • Page:
  • 1

TOPIC:

error XS0208: Cannot take the address ... a pointer for using @ for ref variable 09 Nov 2016 09:15 #586

  • ArneOrtlinghaus
  • ArneOrtlinghaus's Avatar
  • Topic Author


  • Posts: 348
  • I have many compiler errors when calling functions with ref variables with the @.
    Is there a possibility that you can changes this?

    function FGetDir (cFullFileName)
    //p Return of the drive/directory for a full filename
    local cDrive, cDir, cFile, cExt as string
    FSplitPath(cFullFileName, @cDrive, @cDir, @cFile, @cExt)

    // The following would resolve it, but there is no possibility to use the same syntax in VO:
    // FSplitPath(cFullFileName, ref cDrive, ref cDir, ref cFile, ref cExt)
    return cDrive+cDir

    function FSplitPath(cPath as string, ;
    cDrive ref string, ;
    cDir ref string, ;
    cFile ref string, ;
    cExt ref string) as void
    ...

    Thank you
    Arne Ortlinghaus

    Please Log in or Create an account to join the conversation.

    error XS0208: Cannot take the address ... a pointer for using @ for ref variable 09 Nov 2016 09:42 #588

    • Chris
    • Chris's Avatar


  • Posts: 3974
  • Hi Arne,

    We implemented this feature (with the use of the/vo7 compiler option) just a few days ago! As I said in another post, there are fixes and improvements literally every day...

    Do you need this "now"? If yes, it is not difficult for us to upload our latest set of compiler dlls in the subscribers' area so you can download it.

    Chris
    XSharp Development Team
    chris(at)xsharp.eu

    Please Log in or Create an account to join the conversation.

    error XS0208: Cannot take the address ... a pointer for using @ for ref variable 09 Nov 2016 09:49 #591

    • ArneOrtlinghaus
    • ArneOrtlinghaus's Avatar
    • Topic Author


  • Posts: 348
  • Hi Chris,

    very nice, that you have implemented it.
    I don't need it immediately, I can wait for the next version. I am currently making conversion tests and this is not the only compiler error I get currently.

    I was astonished that the X# Compiler identified some risky parts I didn't realize before. Marking a statement like
    x := x
    is a nice help for identifying wrong or useless code.

    Please Log in or Create an account to join the conversation.

    error XS0208: Cannot take the address ... a pointer for using @ for ref variable 09 Nov 2016 09:55 #594

    • robert
    • robert's Avatar


  • Posts: 3588
  • Arne,

    ArneOrtlinghaus wrote: Hi Chris,

    Marking a statement like
    x := x
    is a nice help for identifying wrong or useless code.


    We have introduced the NOP keyword, which could be usefull if you want to include an empty ELSE or OTHERWISE branch in your code for documentation purposes. The NOP keyword generates no code but is seen as a valid statement. (Like an extra semi colon in C#)

    Robert
    XSharp Development Team
    The Netherlands

    Please Log in or Create an account to join the conversation.

    error XS0208: Cannot take the address ... a pointer for using @ for ref variable 09 Nov 2016 10:04 #596

    • ArneOrtlinghaus
    • ArneOrtlinghaus's Avatar
    • Topic Author


  • Posts: 348
  • Robert,
    this is good. When starting with VO we defined a function Nop() which does the same purpose, but a keyword NOP is surely better.

    Please Log in or Create an account to join the conversation.

    • Page:
    • 1