Repository navigation
Commit 5f7477a
authored
Devel-C (#63)
Expand and harden C and Fortran binding support
- add target-probed direct-C wrapping for scalars, pointers, arrays, strings,
hidden outputs, status projection, collision forwarding, and exact ABI types
- broaden Fortran support for character data, abstract hierarchies, generic
constructors, ownership, and dependency-ordered compilation
- complete semantic policy before planning and make generated cleanup safe
across coercion, native-status, and result-conversion failures
- add maintained libm, TA-Lib, BSPLINE, BLAS, LAPACK, FFTPACK, and MINPACK
validation with portable compiler and platform coverage
- reorganize tests around feature and pipeline ownership and strengthen
end-to-end contract, build, and memory-safety evidence
- rewrite the documentation around current workflows, support boundaries,
architecture, and real-library examples while removing obsolete material
- Remove old documentation and add c-support1 parent 5c0d3ca commit 5f7477a
3,087 files changed
Lines changed: 35996 additions & 22979 deletions
File tree
- .githooks
- .github
- workflows
- benchmarks
- docs
- developer
- deferred
- packages
- codegen
- roadmap
- workflows
- old_docs
- architecture
- user
- assets/vision
- examples
- c
- fortran
- recipes
- faq
- getting-started
- guide
- language-support
- reference
- pyi-contracts
- troubleshooting
- tutorials
- examples
- c
- libm
- tests
- ta_lib
- tests
- fortran
- blas
- ci
- native
- tests
- bspline
- native
- tests
- fftpack
- native
- tests
- lapack
- ci
- native
- support
- tests
- minpack
- native
- tests
- prik
- codegen
- c
- fortran
- compiler
- contracts
- naming
- parsers
- c
- fortran
- pipeline
- planning
- policy
- preprocessing
- probes
- printers
- runtime/native_support
- semantics
- tests
- c
- _support
- data_types
- probes
- semantics
- enumerations
- parsing
- semantics
- fixtures
- native
- parser
- functions
- codegen
- end_to_end
- parsing
- semantics
- infrastructure
- building/pipeline
- cli/pipeline
- execution_examples
- parsing
- preprocessing
- semantic_ir/semantics
- semantic_pyi
- pipeline
- semantics
- primitive_pointers
- end_to_end
- fixtures/native
- semantics
- primitive_scalars
- codegen
- end_to_end
- policy
- semantics
- primitive_strings/end_to_end
- records
- parsing
- semantics
- symbol_collisions
- codegen
- end_to_end
- docs
- fortran
- _support
- allocatables
- end_to_end
- fixtures/native
- pipeline
- policy
- arrays
- codegen
- end_to_end
- fixtures
- contracts
- array_ops
- fmath_arrays_f90
- fmath_arrays
- native
- pipeline
- callbacks
- end_to_end
- fixtures/native
- pipeline
- policy
- data_types
- end_to_end
- fixtures
- contracts
- fbind_value_f90
- fmath_f90
- fmath
- native
- pipeline
- probes
- derived_types
- codegen
- end_to_end
- fixtures
- contracts
- fbind_c_derived_layout_f90
- fborrowed_finalizer_f90
- fconstructors_f90
- native
- routing/contracts
- derived_types_direct_bind_c_f90
- derived_types_mixed_bind_c_f90
- parsing
- pipeline
- policy
- semantics
- enumerations
- end_to_end
- fixtures/native
- pipeline
- semantics
- error_handling
- codegen
- end_to_end
- fixtures
- contracts
- fopenmp_runtime_f90
- fruntime_recursion_f90
- edited_contracts/runtime_policy
- native
- routing/contracts
- error_handling_direct_bind_c_f90
- error_handling_mixed_bind_c_f90
- pipeline
- functions
- codegen
- end_to_end
- fixtures
- contracts
- basic_subroutine
- blas_like
- external_bundle
- fixed_external
- free_external
- edited_contracts/c_order_flat_buffer
- native
- policy
- generic_interfaces
- end_to_end
- fixtures/native
- parsing
- pipeline
- policy
- semantics
- infrastructure
- building
- compiling
- end_to_end
- fixtures
- contracts
- multiple_files/combined_modules
- runtime_abi
- native
- routing/native
- real_libraries
- pipeline
- fixtures/generated_contracts/source_builds
- fdefault_output
- fruntime_abi_f90
- verbose_api
- cli/pipeline
- codegen
- parsing
- fixtures
- errors
- general
- policy
- preprocessing
- printers
- runtime
- semantic_ir/semantics
- fixtures/general/expected
- semantic_pyi
- contracts
- calls_and_results
- codegen
- end_to_end
- fixtures
- edited_contracts
- immutable_replacements
- native_order
- projected_results
- native
- policy
- exports_and_modules
- codegen
- end_to_end
- fixtures
- edited_contracts
- module_exports
- module_variables_visibility
- visibility
- contracts/fnaming_f90
- native
- pipeline
- policy
- semantics
- functions_and_classes
- codegen
- end_to_end
- fixtures/edited_contracts
- method_and_constructor
- overloaded_api
- private_module_specifics_without_bind
- private_type_bound_specifics_without_bind
- pruned_surface
- without_constructor_member
- policy
- semantics
- end_to_end
- parsing
- pipeline/fixtures/contracts/contract_import_graph/generated
Some content is hidden
Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
12 | 12 | | |
13 | 13 | | |
14 | 14 | | |
15 | | - | |
| 15 | + | |
16 | 16 | | |
17 | 17 | | |
18 | 18 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
2 | 2 | | |
3 | 3 | | |
4 | 4 | | |
5 | | - | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
6 | 9 | | |
7 | 10 | | |
8 | 11 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
439 | 439 | | |
440 | 440 | | |
441 | 441 | | |
442 | | - | |
443 | | - | |
| 442 | + | |
| 443 | + | |
444 | 444 | | |
445 | 445 | | |
446 | 446 | | |
447 | | - | |
448 | | - | |
449 | | - | |
450 | | - | |
451 | | - | |
452 | | - | |
453 | | - | |
454 | | - | |
455 | | - | |
456 | | - | |
457 | | - | |
458 | | - | |
459 | | - | |
460 | | - | |
461 | | - | |
462 | | - | |
463 | | - | |
464 | | - | |
465 | | - | |
466 | | - | |
467 | | - | |
468 | | - | |
469 | | - | |
470 | | - | |
471 | | - | |
472 | | - | |
473 | | - | |
474 | | - | |
475 | | - | |
476 | | - | |
477 | | - | |
478 | | - | |
479 | | - | |
480 | | - | |
481 | | - | |
482 | | - | |
483 | | - | |
484 | | - | |
485 | | - | |
486 | | - | |
487 | | - | |
488 | | - | |
489 | | - | |
490 | | - | |
491 | | - | |
492 | | - | |
493 | | - | |
494 | | - | |
495 | | - | |
496 | | - | |
497 | | - | |
498 | | - | |
499 | | - | |
500 | | - | |
501 | | - | |
502 | | - | |
503 | | - | |
504 | | - | |
505 | | - | |
506 | | - | |
507 | | - | |
508 | | - | |
509 | | - | |
510 | | - | |
511 | | - | |
512 | | - | |
513 | | - | |
514 | | - | |
515 | | - | |
516 | | - | |
517 | | - | |
518 | | - | |
519 | | - | |
520 | | - | |
521 | | - | |
522 | | - | |
523 | | - | |
524 | | - | |
525 | | - | |
526 | | - | |
527 | | - | |
528 | | - | |
529 | | - | |
530 | | - | |
531 | | - | |
532 | | - | |
533 | | - | |
534 | | - | |
535 | | - | |
536 | | - | |
537 | | - | |
538 | | - | |
539 | | - | |
| 447 | + | |
540 | 448 | | |
541 | 449 | | |
542 | 450 | | |
543 | | - | |
| 451 | + | |
544 | 452 | | |
545 | 453 | | |
546 | 454 | | |
547 | | - | |
548 | | - | |
| 455 | + | |
| 456 | + | |
549 | 457 | | |
550 | 458 | | |
551 | 459 | | |
| |||
687 | 595 | | |
688 | 596 | | |
689 | 597 | | |
690 | | - | |
| 598 | + | |
691 | 599 | | |
692 | 600 | | |
693 | 601 | | |
| |||
698 | 606 | | |
699 | 607 | | |
700 | 608 | | |
701 | | - | |
| 609 | + | |
702 | 610 | | |
703 | 611 | | |
704 | | - | |
| 612 | + | |
705 | 613 | | |
706 | 614 | | |
707 | 615 | | |
| |||
713 | 621 | | |
714 | 622 | | |
715 | 623 | | |
716 | | - | |
| 624 | + | |
717 | 625 | | |
718 | 626 | | |
719 | 627 | | |
720 | 628 | | |
721 | 629 | | |
722 | | - | |
| 630 | + | |
723 | 631 | | |
724 | | - | |
| 632 | + | |
725 | 633 | | |
726 | 634 | | |
727 | 635 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
| 12 | + | |
| 13 | + | |
| 14 | + | |
| 15 | + | |
| 16 | + | |
| 17 | + | |
| 18 | + | |
| 19 | + | |
| 20 | + | |
| 21 | + | |
| 22 | + | |
| 23 | + | |
| 24 | + | |
| 25 | + | |
| 26 | + | |
| 27 | + | |
| 28 | + | |
| 29 | + | |
| 30 | + | |
| 31 | + | |
| 32 | + | |
| 33 | + | |
| 34 | + | |
| 35 | + | |
| 36 | + | |
| 37 | + | |
| 38 | + | |
| 39 | + | |
| 40 | + | |
| 41 | + | |
| 42 | + | |
| 43 | + | |
| 44 | + | |
| 45 | + | |
| 46 | + | |
| 47 | + | |
| 48 | + | |
| 49 | + | |
| 50 | + | |
| 51 | + | |
| 52 | + | |
| 53 | + | |
| 54 | + | |
| 55 | + | |
| 56 | + | |
| 57 | + | |
| 58 | + | |
| 59 | + | |
| 60 | + | |
| 61 | + | |
| 62 | + | |
| 63 | + | |
| 64 | + | |
| 65 | + | |
| 66 | + | |
| 67 | + | |
| 68 | + | |
| 69 | + | |
| 70 | + | |
| 71 | + | |
| 72 | + | |
| 73 | + | |
| 74 | + | |
| 75 | + | |
| 76 | + | |
| 77 | + | |
| 78 | + | |
| 79 | + | |
| 80 | + | |
| 81 | + | |
| 82 | + | |
| 83 | + | |
| 84 | + | |
| 85 | + | |
| 86 | + | |
| 87 | + | |
| 88 | + | |
| 89 | + | |
| 90 | + | |
| 91 | + | |
| 92 | + | |
| 93 | + | |
| 94 | + | |
| 95 | + | |
| 96 | + | |
| 97 | + | |
| 98 | + | |
| 99 | + | |
| 100 | + | |
| 101 | + | |
| 102 | + | |
| 103 | + | |
| 104 | + | |
| 105 | + | |
| 106 | + | |
| 107 | + | |
| 108 | + | |
| 109 | + | |
| 110 | + | |
| 111 | + | |
| 112 | + | |
| 113 | + | |
| 114 | + | |
| 115 | + | |
| 116 | + | |
| 117 | + | |
| 118 | + | |
| 119 | + | |
| 120 | + | |
| 121 | + | |
| 122 | + | |
| 123 | + | |
| 124 | + | |
| 125 | + | |
| 126 | + | |
| 127 | + | |
| 128 | + | |
| 129 | + | |
| 130 | + | |
| 131 | + | |
| 132 | + | |
| 133 | + | |
| 134 | + | |
| 135 | + | |
| 136 | + | |
| 137 | + | |
| 138 | + | |
| 139 | + | |
| 140 | + | |
| 141 | + | |
| 142 | + | |
| 143 | + | |
| 144 | + | |
| 145 | + | |
| 146 | + | |
| 147 | + | |
| 148 | + | |
| 149 | + | |
| 150 | + | |
| 151 | + | |
| 152 | + | |
| 153 | + | |
| 154 | + | |
| 155 | + | |
| 156 | + | |
| 157 | + | |
| 158 | + | |
| 159 | + | |
0 commit comments