Comments (4)
Thanks for finding this, @mscfd, but I'm a bit unclear on how you trigger it exactly? That implies we're trying to render something that has no lines?
from ford.
I wrongly assumed that for really simple test project lines=0 happens naturally. But indeed, it is a bit more intriguing. It looks like that for 'display: private' (possibly in conjunction with submodules) lines are counted wrongly. In the example below, I have self.num_lines=4 but total=0. Whether display:public is present or not, does not change the exception.
The description line with my max(1,*)-safeguard is
"400.0% of total for procedures."
ford_project_file.md:
---
project: test
src_dir: ./src
output_dir: ./doc
display: protected
display: private
display: public
---
test.f90:
module test
implicit none
private
public create
type, abstract, public :: base
end type base
end module test
test_smod.f90:
submodule (test) test_smod
implicit none
type, extends(base) :: impl
end type impl
contains
module function create() result(p)
class(base), pointer :: p
allocate(impl :: p)
end function create
end submodule test_smod
from ford.
Note that your example isn't valid Fortran, and you'd need at least an interface
for create
. Adding that:
module test
implicit none
private
public :: create
type, abstract, public :: base
end type base
interface
function create() result(p)
import base
class(base), pointer :: p
end function create
end interface
end module test
and ford runs fine.
I'll add a warning and a safe-guard for lines_description
from ford.
Thanks. As this was not real code, I never compiled it. it was just for testing ford.
from ford.
Related Issues (20)
- Derived-types declared in submodules are missing HOT 6
- Parser failure in associate block with []-arrays
- Some attributes are missing from derived types
- Option coloured_edges is broken HOT 1
- Can't link from a page to source code HOT 3
- Bug in logic to skip big or incomplete graphs HOT 1
- Graphs with long edge labels become degenerated HOT 5
- show_proc_parent is ignored HOT 2
- Create FAQ
- Feature request: Option to turn off certain homepage components HOT 1
- Idea: "Source File" link to GitHub
- Update to fontawesome v6 HOT 2
- Fortran keywords are highlighed in a regular preformatted code block HOT 3
- Links are case sensitive HOT 2
- Issue with the BLOCK Statement HOT 1
- Markdown line breaks not working in lists HOT 2
- Documentation generation on my local machine and on github gives different outcomes HOT 6
- Path.resolve can not resolve urls
- Absurdly tall graphs HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from ford.