Rust: No se pueden compilar los documentos del compilador

Creado en 23 jun. 2017  ·  3Comentarios  ·  Fuente: rust-lang/rust

Esto parece ser informado, arreglado y vuelto a romper con bastante frecuencia 😅
El problema actual es:

 Documenting rustc_trans v0.0.0 (file:///home/martin/programs/rust/src/librustc_trans)
error[E0308]: mismatched types
   --> src/librustc_trans/back/write.rs:377:55
    |
377 |     llvm::LLVMRustSetInlineAsmDiagnosticHandler(llcx, inline_asm_handler, fv);
    |                                                       ^^^^^^^^^^^^^^^^^^ expected enum `libc::c_void`, found a different enum `libc::c_void`
    |
    = note: expected type `unsafe extern "C" fn(*mut llvm::SMDiagnostic_opaque, *const libc::c_void, u32)`
               found type `unsafe extern "C" fn(*mut llvm::SMDiagnostic_opaque, *const libc::c_void, u32) {back::write::inline_asm_handler}`
note: Perhaps two different versions of crate `libc` are being used?
   --> src/librustc_trans/back/write.rs:377:55
    |
377 |     llvm::LLVMRustSetInlineAsmDiagnosticHandler(llcx, inline_asm_handler, fv);
    |                                                       ^^^^^^^^^^^^^^^^^^

error[E0308]: mismatched types
   --> src/librustc_trans/back/write.rs:377:75
    |
377 |     llvm::LLVMRustSetInlineAsmDiagnosticHandler(llcx, inline_asm_handler, fv);
    |                                                                           ^^ expected enum `libc::c_void`, found a different enum `libc::c_void`
    |
    = note: expected type `*mut libc::c_void` (enum `libc::c_void`)
               found type `*mut libc::c_void` (enum `libc::c_void`)
note: Perhaps two different versions of crate `libc` are being used?
   --> src/librustc_trans/back/write.rs:377:75
    |
377 |     llvm::LLVMRustSetInlineAsmDiagnosticHandler(llcx, inline_asm_handler, fv);
    |                                                                           ^^
    = help: here are some functions which might fulfill your needs:
            - .offset(...)
            - .wrapping_offset(...)

error[E0308]: mismatched types
   --> src/librustc_trans/back/write.rs:378:49
    |
378 |     llvm::LLVMContextSetDiagnosticHandler(llcx, diagnostic_handler, fv);
    |                                                 ^^^^^^^^^^^^^^^^^^ expected enum `libc::c_void`, found a different enum `libc::c_void`
    |
    = note: expected type `unsafe extern "C" fn(*mut llvm::DiagnosticInfo_opaque, *mut libc::c_void)`
               found type `unsafe extern "C" fn(*mut llvm::DiagnosticInfo_opaque, *mut libc::c_void) {back::write::diagnostic_handler}`
note: Perhaps two different versions of crate `libc` are being used?
   --> src/librustc_trans/back/write.rs:378:49
    |
378 |     llvm::LLVMContextSetDiagnosticHandler(llcx, diagnostic_handler, fv);
    |                                                 ^^^^^^^^^^^^^^^^^^

error[E0308]: mismatched types
   --> src/librustc_trans/back/write.rs:378:69
    |
378 |     llvm::LLVMContextSetDiagnosticHandler(llcx, diagnostic_handler, fv);
    |                                                                     ^^ expected enum `libc::c_void`, found a different enum `libc::c_void`
    |
    = note: expected type `*mut libc::c_void` (enum `libc::c_void`)
               found type `*mut libc::c_void` (enum `libc::c_void`)
note: Perhaps two different versions of crate `libc` are being used?
   --> src/librustc_trans/back/write.rs:378:69
    |
378 |     llvm::LLVMContextSetDiagnosticHandler(llcx, diagnostic_handler, fv);
    |                                                                     ^^
    = help: here are some functions which might fulfill your needs:
            - .offset(...)
            - .wrapping_offset(...)

error: Compilation failed, aborting rustdoc

error: Could not document `rustc_trans`.
C-bug P-medium T-infra

Comentario más útil

Hablamos de esto durante la reunión y creemos que agregar documentos del compilador a un compilador corto es una buena manera de resolverlo. Sin embargo, resolver los detalles llevará algún tiempo.

Todos 3 comentarios

Hablamos de esto durante la reunión y creemos que agregar documentos del compilador a un compilador corto es una buena manera de resolverlo. Sin embargo, resolver los detalles llevará algún tiempo.

Problema relacionado: # 44629

Los documentos del compilador ya no se pueden romper con # 46278.
Creo que este problema se puede cerrar.

¿Fue útil esta página
0 / 5 - 0 calificaciones