| Name | Modified | Size | Downloads / Week |
|---|---|---|---|
| Parent folder | |||
| lfortran-0.66.0.tar.gz | 2026-09-14 | 3.5 MB | |
| README.md | 2026-09-13 | 11.5 kB | |
| v0.66.0 source code.tar.gz | 2026-09-13 | 5.6 MB | |
| v0.66.0 source code.zip | 2026-09-13 | 9.3 MB | |
| Totals: 4 Items | 18.5 MB | 5 | |
What's Changed
- Fix self-named and link-name generics with mixed-case names by @certik in https://github.com/lfortran/lfortran/pull/12273
- fix: support type equivalence for BIND(C) and SEQUENCE derived types across different scopes by @Jainam-not-a-robot in https://github.com/lfortran/lfortran/pull/12604
- Fix generic interface named after a used procedure by @certik in https://github.com/lfortran/lfortran/pull/12606
- fix: handle an enumeration reached through another module by @certik in https://github.com/lfortran/lfortran/pull/12608
- Accept -fPIE and macOS -install_name linker flags by @certik in https://github.com/lfortran/lfortran/pull/12276
- docs: document every ASR node and test the examples by @certik in https://github.com/lfortran/lfortran/pull/12607
- docs: add the EnumConstructor example by @certik in https://github.com/lfortran/lfortran/pull/12618
- Contain the EXTERNAL procedure accumulator to its scope by @certik in https://github.com/lfortran/lfortran/pull/12622
- Keep EXTERNAL declarations from changing a name's accessibility by @certik in https://github.com/lfortran/lfortran/pull/12623
- Fix the implicit interface by @certik in https://github.com/lfortran/lfortran/pull/12627
- Represent Fortran implicit interfaces in ASR as deftype ImplicitInterface by @certik in https://github.com/lfortran/lfortran/pull/12624
- Add FunctionPointerCast for divergent implicit-interface references by @certik in https://github.com/lfortran/lfortran/pull/12621
- ci: pin the WASM host environment by @certik in https://github.com/lfortran/lfortran/pull/12632
- Give repeated ENTRY body copies their own labels by @certik in https://github.com/lfortran/lfortran/pull/12636
- Unify parallel loop lowering across CPU and GPU (reviewable series) by @certik in https://github.com/lfortran/lfortran/pull/12650
- fix: resolve LLVM crash for INQUIRE IOLENGTH with dynamic strings by @srinjoy933 in https://github.com/lfortran/lfortran/pull/12625
- Keep host Blocks when a GPU launch is declined by @certik in https://github.com/lfortran/lfortran/pull/12657
- fix: honor reshape order for pointer-array sources in LLVM backend by @certik in https://github.com/lfortran/lfortran/pull/12658
- Implement Fortran 2023 conditional expressions by @certik in https://github.com/lfortran/lfortran/pull/12639
- Evaluate character len expression to constant when possible by @Jainam-not-a-robot in https://github.com/lfortran/lfortran/pull/12663
- fix: support NULL() as an actual argument by @certik in https://github.com/lfortran/lfortran/pull/12661
- Add LLVM 23 support by @certik in https://github.com/lfortran/lfortran/pull/12672
- pixi: Pin lab dependencies by @certik in https://github.com/lfortran/lfortran/pull/12676
- Implement Fortran 2023 conditional arguments by @certik in https://github.com/lfortran/lfortran/pull/12670
- Migrate away from toml by @junghans in https://github.com/lfortran/lfortran/pull/12679
- Bring back support for xeus-5 by @junghans in https://github.com/lfortran/lfortran/pull/12688
- Add FunctionCall case in is_modifiable_actual_argument_expr by @Jainam-not-a-robot in https://github.com/lfortran/lfortran/pull/12662
- Fix PDT constructor initialization by @certik in https://github.com/lfortran/lfortran/pull/12698
- fix: complex associates are pointer assigned instead of creating temporaries by @YashNagda17 in https://github.com/lfortran/lfortran/pull/12686
- Follow-ups to conditional arguments:
.nil.token placement and C1540 by keyword by @certik in https://github.com/lfortran/lfortran/pull/12684 - Allow c_loc on assumed-rank arrays by @himanshumahajan138 in https://github.com/lfortran/lfortran/pull/12693
- build: fix 'nix develop', bump nixpkgs version by @skivdal in https://github.com/lfortran/lfortran/pull/12669
- fix: resolve LLVM crash when SHIFTA is called elementally by @srinjoy933 in https://github.com/lfortran/lfortran/pull/12619
- More PDT fixes by @certik in https://github.com/lfortran/lfortran/pull/12703
- fix: own character array component data on the heap by @certik in https://github.com/lfortran/lfortran/pull/12704
- Answer size(matmul) and size(transpose) from the operand shapes by @certik in https://github.com/lfortran/lfortran/pull/12707
- Handle character array section with substring on LHS by @Jainam-not-a-robot in https://github.com/lfortran/lfortran/pull/12714
- String fixes by @certik in https://github.com/lfortran/lfortran/pull/12710
- ASR: Support co_broadcast for static structs and validate POD types by @Madhav1729 in https://github.com/lfortran/lfortran/pull/12595
- fix: don't apply intrinsic assignment shape rules to a defined assign… by @certik in https://github.com/lfortran/lfortran/pull/12717
- Fix: process return variable before contains block (fixes [#12614]) by @usefahmed07 in https://github.com/lfortran/lfortran/pull/12615
- fix: keep
&!inside character literals in free-form prescan by @certik in https://github.com/lfortran/lfortran/pull/12724 - Fix: unresolved module procedure in operator interfaces reported once, at right location by @usefahmed07 in https://github.com/lfortran/lfortran/pull/12660
- CI: Update third-party testing to Formal version 0.4.0 by @bonachea in https://github.com/lfortran/lfortran/pull/12726
- fix: initialize current_module_sym in symbol table visitor by @himanshumahajan138 in https://github.com/lfortran/lfortran/pull/12722
- fix: propagation of dynamic type in associate block by @YashNagda17 in https://github.com/lfortran/lfortran/pull/12689
- Offload more Formal kernels by @certik in https://github.com/lfortran/lfortran/pull/12728
- More GPU fixes by @certik in https://github.com/lfortran/lfortran/pull/12730
- Make a do concurrent that cannot be offloaded a compile error by @certik in https://github.com/lfortran/lfortran/pull/12731
- fix: resolve a specific procedure stored under a mangled name by @certik in https://github.com/lfortran/lfortran/pull/12732
- Refactor the GPU lowering pipeline by @certik in https://github.com/lfortran/lfortran/pull/12739
- fix: preserve GPU fallback for allocatable function results by @certik in https://github.com/lfortran/lfortran/pull/12740
- fix: bound the digit scan in the C++ backend's trim_dims by @certik in https://github.com/lfortran/lfortran/pull/12741
- fix: broadcast a structure constructor assigned to an array by @certik in https://github.com/lfortran/lfortran/pull/12742
- Fix implicit-interface CHARACTER array dummy length, and pin the layout with a regression test by @certik in https://github.com/lfortran/lfortran/pull/12743
- Give an implicit interface's string-expression dummy assumed length by @DisciplinedSoftware in https://github.com/lfortran/lfortran/pull/12635
- fix: reject a zero statement label in the tokenizer by @certik in https://github.com/lfortran/lfortran/pull/12744
- gpu: finalize and verify shared offload layouts by @certik in https://github.com/lfortran/lfortran/pull/12745
- Blank pad the shorter character operand when comparing at run time by @certik in https://github.com/lfortran/lfortran/pull/12746
- Copy scalar allocatable components on derived type assignment by @certik in https://github.com/lfortran/lfortran/pull/12750
- Do not scan Hollerith text as format edit descriptors by @certik in https://github.com/lfortran/lfortran/pull/12747
- Use BOZ literal bits as the representation in dble, real and cmplx by @certik in https://github.com/lfortran/lfortran/pull/12748
- GPU refactor by @certik in https://github.com/lfortran/lfortran/pull/12760
- Resolve type bound procedures of a non-module program unit by @certik in https://github.com/lfortran/lfortran/pull/12751
- Write each character value of an implied do loop at its own length by @certik in https://github.com/lfortran/lfortran/pull/12752
- Return the real UTC offset in DATE_AND_TIME VALUES(4) by @certik in https://github.com/lfortran/lfortran/pull/12754
- Associate a pointer-returning function result instead of copying it by @certik in https://github.com/lfortran/lfortran/pull/12753
- Honor the decimal edit mode across formatted I/O by @certik in https://github.com/lfortran/lfortran/pull/12755
- fix: build COMPILE tests as custom targets, not object libraries by @certik in https://github.com/lfortran/lfortran/pull/12757
- Keep implicit interface stable across repeated references by @certik in https://github.com/lfortran/lfortran/pull/12759
- Fix arithmetic on scalar allocatable complex variables by @certik in https://github.com/lfortran/lfortran/pull/12758
- gpu: warn where an offloaded loop's stop cannot deliver its stop code by @certik in https://github.com/lfortran/lfortran/pull/12761
- tests: cover the two DECIMAL= errors on a data transfer statement by @certik in https://github.com/lfortran/lfortran/pull/12763
- Report a real exit code when debug info generation fails by @certik in https://github.com/lfortran/lfortran/pull/12764
- Keep assumed-rank arrays when duplicating types by @certik in https://github.com/lfortran/lfortran/pull/12768
- ci: cut CI queue time without losing coverage by @certik in https://github.com/lfortran/lfortran/pull/12774
- GPU offload coverage by @certik in https://github.com/lfortran/lfortran/pull/12771
- Advance the record after a stdin list-directed READ by @certik in https://github.com/lfortran/lfortran/pull/12765
- Fix invalid map key exception for intrinsics in implied do loops by @certik in https://github.com/lfortran/lfortran/pull/12767
- Copy a parenthesized ASSOCIATE selector by @certik in https://github.com/lfortran/lfortran/pull/12769
- fix: equivalence with a common block array in a non-anchor position by @certik in https://github.com/lfortran/lfortran/pull/12770
- fix: reject an equivalence between two common block variables by @certik in https://github.com/lfortran/lfortran/pull/12784
- fix: equivalence of a local array into a larger one at an offset by @certik in https://github.com/lfortran/lfortran/pull/12785
- gpu: refuse two shapes the device emitter cannot express by @certik in https://github.com/lfortran/lfortran/pull/12766
- fix: skip String length checks on unresolved externals by @certik in https://github.com/lfortran/lfortran/pull/12787
- fix: stop interactive formatted READ from hanging on Emscripten stdin by @minhqdao in https://github.com/lfortran/lfortran/pull/12654
- fix: fold constant substrings only for parameters by @certik in https://github.com/lfortran/lfortran/pull/12789
- Add constant folding for multi dimensional array sections by @Jainam-not-a-robot in https://github.com/lfortran/lfortran/pull/12719
- fix: do not warn on POINTER/ALLOCATABLE DO loop-control expressions by @himanshumahajan138 in https://github.com/lfortran/lfortran/pull/12690
- Add fix-issue agent skill by @certik in https://github.com/lfortran/lfortran/pull/12816
- skill: fix-issue runs exhaustive CI and files issues for unrelated bugs by @certik in https://github.com/lfortran/lfortran/pull/12824
- gpu: offload every loop, refuse only a documented list early by @certik in https://github.com/lfortran/lfortran/pull/12814
- Fully offload Formal to Metal by @certik in https://github.com/lfortran/lfortran/pull/12794
New Contributors
- @DisciplinedSoftware made their first contribution in https://github.com/lfortran/lfortran/pull/12635
- @minhqdao made their first contribution in https://github.com/lfortran/lfortran/pull/12654
Full Changelog: https://github.com/lfortran/lfortran/compare/v0.65.0...v0.66.0