Dear Cerberus X User!
As we prepare to transition the forum ownership from Mike to Phil (TripleHead GmbH), we need your explicit consent to transfer your user data in accordance with our amended Terms and Rules in order to be compliant with data protection laws.
Please read the new Terms and Rules below, check the box to agree, and click "Accept" to continue enjoying your Cerberus X Forum experience. The deadline for consent is April 5, 2024.
Do not accept the amended Terms and Rules if you do not wish your personal data to be transferred to the future forum owner!
Accepting ensures:
- Continued access to your account with a short break for the actual transfer.
- Retention of your data under the same terms.
Without consent:
- You don't have further access to your forum user account.
- Your account and personal data will be deleted after April 5, 2024.
- Public posts remain, but usernames indicating real identity will be anonymized. If you disagree with a fictitious name you have the option to contact us so we can find a name that is acceptable to you.
We hope to keep you in our community and see you on the forum soon!
All the best
Your Cerberus X Team
Method Emit( t$ )
output.Push t+"~n"
End
Local source:=output.Join( "~n" )+"~n"
At the moment I'm going through any code that deals with blocks to get the tracing more accurate. In theory, blocks that are correct should not show up, but there will always be issues with blocks ending with just 'End'. Basically the same problem as with the preparser code of 'Which End is for what block'. So far I've never seen any For loops that end with either End, End For. Could drop that check and just stick with Next. Opinions?So testing might now be wise now as you may change things anyway.
Shall I get rid of it?For should always end with next. Ending it with End feels totally wrong.
For now only fixes. Any removal of existing language features we should implement in a version 2.Shall I get rid of it?
Well, it is documented twice. In the keywords section and in the loop for section.But at the same time, it isn't documented.
Sorry my bad. I was just looking at the keyword reference. There it isn't mentioned.Well, it is documented twice. In the keywords section and in the loop for section.
Just to make things clear, I am in favour of these kind of changes, but maybe we should have a plan about what to change and then do it in one move!?
Here you go, this produces a memory access error when you parse the project. Just press F6.If there is any problems, I will need sample code so I can reproduce the issue.
Strict
'Simple C++ tool script
'The next line is the faulty one.
Const SAPP_MODIFIER_SHIFT:Int = (1 << 0)
Const SAPP_MODIFIER_CTRL:Int = (1 Shl 1)
Const SAPP_MODIFIER_ALT:Int = (1 Shl 2)
Const SAPP_MODIFIER_SUPER:Int = (1 Shl 3)
'-----------------------------------------------------------------
Function Main:Int()
Print ("Cerberus X - C++ tool template")
Return 0
End
#Rem
asdf "asdf" "
#End
Function Main:Int()
Print
End
#Rem
asdf "asdf
asdf"
#End
Function Main:Int()
Print ' This line incorrect. But CerberusX reports the previous line
End
#Rem
asdf "asdf
asdf"
#End
' <-- CerberusX reported this line as incorrect.
Function Main:Int()
Print ' Although, the really incorrect line is this.
End
Something tells me you are not using the last set of files. Those snippets report correctly with the files I have.Probably, the tests were done with content between "#Rem" and "#End, that there was no double quote character. Therefore, the error persists, even after reconstructing transcc. For, the code that had sent when starting this thread reporting this, had the character double quotes.