sebsite.pw
۲۳ مهر
شکاف میان استاندارد مکتوب C و کامپایلرهای واقعی: چرا کد شما واقعاً Standard C نیست؟
بسیاری از برنامهنویسان تصور میکنند کامپایلرهایی مانند GCC و Clang متن استاندارد زبان C را موبهمو پیادهسازی کردهاند. با این حال، تفاوتهای فنی عمیقی در نحوه مدیریت کلمات کلیدی، ماکروهای اعشاری، پرگماها و حتی هدرهای کتابخانههایی مانند musl وجود دارد که نشان میدهد C در دنیای واقعی با استاندارد ISO تفاوت دارد.
۱۰۷ امتیاز
۷۳ نظر
۴ دقیقه
github.com
۲۱ مهر
کشف یک باگ خطرناک ۱۱ ساله در سیستم بررسی عمر متغیرهای Rust
کشف یک حفره ناامنی (Soundness Hole) قدیمی در کامپایلر Rust نشان میدهد که چگونه تخصیص فیلدهای کوواریانت میتواند الزامات عمر متغیرها را دور بزند. این باگ به برنامهها اجازه میدهد کدهای ناامن را کامپایل کرده و به حافظه آزادشده دسترسی پیدا کنند، هرچند اصلاح آن از طریق کامپایلر امکانپذیر است.
۷۲۳ امتیاز
۴۰۶ نظر
۳ دقیقه