Jump to content
  • Advertisement
Sign in to follow this  
Solokiller

Bug with access masks

This topic is 957 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

There's a bug with access masks and certain features of the language.

The default access mask is set to 1 on creation. Right after that, some built-in features are registered, such as delegates.

 

When you create a module with an access mask that does not include 1, attempting to use any delegate will cause an assert to be hit.

 

Some code will simply fail to compile, but other code, such as a class constructor will cause a crash instead.

 

This project (VS2013) shows the problem in question. Running the script will cause a null pointer exception.

https://dl.dropboxusercontent.com/u/46048979/AS_AccessMaskBug2.rar

 

Working around this requires all modules to share 1 as access, which can interfere with the design of application APIs. I was trying to eliminate 1 as a common mask, and using a combined bitmask instead, which would allow me to use the access mask as a zero based index in some cases.

 

The documentation on access masks does not mention this, so assume it is indeed a bug.

Share this post


Link to post
Share on other sites
Advertisement

I've fixed this in revision 2256. The access mask now defaults to 0xFFFFFFFF to make sure all built-in functions and types are available to all modules.

 

Regards,

Andreas

Share this post


Link to post
Share on other sites
Sign in to follow this  

  • Advertisement
×

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

We are the game development community.

Whether you are an indie, hobbyist, AAA developer, or just trying to learn, GameDev.net is the place for you to learn, share, and connect with the games industry. Learn more About Us or sign up!

Sign me up!