{"record":{"id":"8a256adfea6fcbad","repo":"oven-sh/bun","slug":"nowritableloadsegment","errorCode":"NoWritableLoadSegment","errorMessage":"NoWritableLoadSegment","messagePattern":"NoWritableLoadSegment","errorType":"error_code","errorClass":"ElfError","httpStatus":null,"severity":"error","filePath":"src/exe_format/elf.rs","lineNumber":31,"sourceCode":"#[cfg(any(target_os = \"linux\", target_os = \"android\"))]\nuse bun_core::env_var;\nuse bun_core::{slice_to_nul, strings};\n\nuse crate::{align_up, read_struct, write_struct};\n\nbun_core::declare_scope!(elf, visible);\n\n#[derive(Debug, thiserror::Error, strum::IntoStaticStr)]\npub enum ElfError {\n    #[error(\"InvalidElfFile\")]\n    InvalidElfFile,\n    #[error(\"Not64Bit\")]\n    Not64Bit,\n    #[error(\"NotLittleEndian\")]\n    NotLittleEndian,\n    #[error(\"BunSectionNotFound\")]\n    BunSectionNotFound,\n    #[error(\"NoWritableLoadSegment\")]\n    NoWritableLoadSegment,\n    #[error(\"NewVaddrCollides\")]\n    NewVaddrCollides,\n}\n\npub struct ElfFile {\n    pub data: Vec<u8>,\n}\n\nimpl ElfFile {\n    pub fn init(data: Vec<u8>) -> Result<Box<ElfFile>, ElfError> {\n        validate_elf64_le(&data)?;\n        Ok(Box::new(ElfFile { data }))\n    }\n\n    /// If PT_INTERP points into a Nix/Guix store path, rewrite it to the\n    /// standard FHS path so `bun build --compile` output stays portable when\n    /// the bun binary itself was patchelf'd (NixOS autoPatchelfHook). See #24742.","sourceCodeStart":13,"sourceCodeEnd":49,"githubUrl":"https://github.com/oven-sh/bun/blob/8c5296ac459e8252d3cd702f3fbcbb0c249d95d5/src/exe_format/elf.rs#L13-L49","documentation":"Error \"NoWritableLoadSegment\" thrown in oven-sh/bun.","triggerScenarios":"Thrown at src/exe_format/elf.rs:31 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":[],"exampleFix":null,"handlingStrategy":null,"validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"8c5296ac459e8252d3cd702f3fbcbb0c249d95d5","analyzedAt":"2026-08-16T08:01:58.794Z","schemaVersion":2},"datasetVersion":"2026-08-16T08:17:34.114Z"}