Const is not displayed in the Debugger?

I add a Const only for debug purposes.

I followed it by a Break, so I can read the Const value.

In the debugger, I do not saw that constant.

Constants “should” be “compiler values”, not runtime values as variables.

For example:

In the above case, the constant value “a” does not even have a type, what would you expect to see in the debugger?

Thanks for the answer.

Exactly what you wrote / show. My const was:


Const nnbsp = &uE280AF

I used a break rect (aka break point)… on the next line and never was able to see it in the Debugger.

I cleared the Caches, run and nothing…

And never will. That’s just name representing a value, never instantiated (that could be visible in the debugger) in the program, but just available to be used in the program, like in an expression or attribution.

I understand what you wrote, but not why this cannot be displayed.

Worst: I do not know why I used a Const instead of a String, because all I wanted was to check what I stored in thennbsp…

Once I saw… nothing, I undo the changes and quit Xojo !

Regards

Interestingly, Xojo seems to be removing the NARROW NO-BREAK SPACE, I think you found some bug.

But they add them in


Format(aSize,"### ###,###")

And they are invisibles in HTMLViever / Browsers, but in Apple’s TextEdit, the separation in the Size (a file size…) is visible, so the number can be read correctly.

Probably comes from internal libs, but Xojo is destroying such glyph in their String framework as we can see here:

Open a feedback case and link it to this thread.

Done.

Here:
67241 - NARROW NO-BREAK SPACE is stripped in VAR

@Rick_A
Could you check the encoding on _nnbsp?

Hey, the nnbsp unicode is incorrect. Xojo works as intended if we fix it:

1 Like

Isn’t &u202F UTF16 ?

Nope. That 202F is “the code” of such char that once translated to utf-8 gets expanded to those 3 bytes.

So, the page (link below) is wrong:

No. It isn’t. You are just interpreting it wrong.

image

I saw:

and think UTF-16…

OK, I stop trying to code or understand code and do something else for today.

Representation vs Real Value ?

1 Like

This was clear. Thank you.

1 Like

U+202F is the Unicode value for NARROW NO-BREAK SPACE. It is represented in UTF8 by 3 bytes E2 80 AF.

See Unicode/UTF-8-character table.

I think @Emile_Schwarz you need to look at e.g. Wikipedia and understand what Unicode is and what UTF8 is.

As said here