About the long (.l) on recent PB...

Everything else that doesn't fall into one of the other PB categories.
User avatar
Caronte3D
Addict
Addict
Posts: 1361
Joined: Fri Jan 22, 2016 5:33 pm
Location: Some Universe

About the long (.l) on recent PB...

Post by Caronte3D »

Question:
On what PB version introduced the need to change .l to .i in order to be able to work the same as past?
Sorry I don't know how to explain it (my bad English), but hope you understand :P
User avatar
Demivec
Addict
Addict
Posts: 4265
Joined: Mon Jul 25, 2005 3:51 pm
Location: Utah, USA

Re: About the long (.l) on recent PB...

Post by Demivec »

Are you referring to the process that returns memory allocation addresses that are more random instead of sequential, like low ones first and high ones later, as an added security feature? If so, then you realize that change merely exposed that the variables that needed to be changed were previously declared with the wrong size because they couldn't hold the range of possible memory addresses that could be returned.

I believe it was PureBasic version 6.10.

Here's a link to a reference by Fred: https://www.purebasic.fr/english/viewtopic.php?p=633695#p633695
Last edited by Demivec on Mon Aug 11, 2025 10:47 pm, edited 1 time in total.
User avatar
TI-994A
Addict
Addict
Posts: 2727
Joined: Sat Feb 19, 2011 3:47 am
Location: Singapore
Contact:

Re: About the long (.l) on recent PB...

Post by TI-994A »

Caronte3D wrote: Mon Aug 11, 2025 6:30 pmOn what PB version introduced the need to change .l to .i in order to be able to work the same as past?
If I understand correctly, you're referring to the introduction of the first 64-bit version of PureBasic, v4.30, released in December 2008.

It effectively changed the size of integer and long data types, causing some legacy code to break.
Texas Instruments TI-99/4A Home Computer: the first home computer with a 16bit processor, crammed into an 8bit architecture. Great hardware - Poor design - Wonderful BASIC engine. And it could talk too! Please visit my YouTube Channel :D
User avatar
Caronte3D
Addict
Addict
Posts: 1361
Joined: Fri Jan 22, 2016 5:33 pm
Location: Some Universe

Re: About the long (.l) on recent PB...

Post by Caronte3D »

I think Demivec's answer is exactly what I need. Thanks
to both of you! :wink:
User avatar
Andre
PureBasic Team
PureBasic Team
Posts: 2139
Joined: Fri Apr 25, 2003 6:14 pm
Location: Germany (Saxony, Deutscheinsiedel)
Contact:

Re: About the long (.l) on recent PB...

Post by Andre »

There should be more helpful topics on this forum, but I found another one by 'freak' in the PureBasic Team Blog describing the changes for 64bit: Is your 64bit program really solid ?
Bye,
...André
(PureBasicTeam::Docs & Support - PureArea.net | Order:: PureBasic | PureVisionXP)
User avatar
TI-994A
Addict
Addict
Posts: 2727
Joined: Sat Feb 19, 2011 3:47 am
Location: Singapore
Contact:

Re: About the long (.l) on recent PB...

Post by TI-994A »

Fred wrote: Wed Jan 15, 2025 3:38 pm...it's because your DLL doesn't support ASRL (random memory allocation using all 64-bit range meaning than pointer can be greatly above 32-bit).
Oh dear! That's something new that I hadn't heard about. :shock:
Texas Instruments TI-99/4A Home Computer: the first home computer with a 16bit processor, crammed into an 8bit architecture. Great hardware - Poor design - Wonderful BASIC engine. And it could talk too! Please visit my YouTube Channel :D
User avatar
idle
Always Here
Always Here
Posts: 5855
Joined: Fri Sep 21, 2007 5:52 am
Location: New Zealand

Re: About the long (.l) on recent PB...

Post by idle »

So that's the reason. Makes perfect sense now.
Post Reply