Giter Club home page Giter Club logo

Comments (4)

japaric avatar japaric commented on August 27, 2024

What svd2rust version were you using? This works for me:

$ cargo new --lib stm32f41x && cd $_

$ curl -LO https://raw.githubusercontent.com/posborne/cmsis-svd/master/data/STMicro/STM32F41x.svd

$ svd2rust -i STM32F41x.svd > src/lib.rs

$ rustfmt src/lib.rs

$ cargo add cortex-m

$ cargo add vcell

$ cargo build

With svd2rust 0.5.1, cargo 0.19.0-nightly (4e95c6b41 2017-03-23) and rustc 1.17.0-nightly (e1cec5d4b 2017-03-29).

Am I correct in thinking the output should have been properly pretty printed (not a giant 7.8M single line)?

No, that's normal (the quasiquoting crate we use under the hood doesn't preserve line breaks and just "inlines" everything). You can run rustfmt on the output.

from svd2rust.

archaelus avatar archaelus commented on August 27, 2024

I definitely still have problems with rustfmt 0.8.1 () installed (built today with rustc 1.18.0-nightly (5e122f59b 2017-04-01)).

I did try patching svdrust to pull in the rustfmt crate and run that before generating output - it's a pretty small change and has generated the STM32F41x core properly. I'm guessing I have some weird syntax incompatibility between the svd2rust output and my rustfmt binary.

from svd2rust.

japaric avatar japaric commented on August 27, 2024

I find this very odd. Relatively "contemporary" versions of rustfmt and rustc should parse / understand the same syntax.

I suppose that apart from rustfmt, calling cargo build on the unformatted rustfmt output doesn't work either?

I wonder if this because you are passing the code to format through rustfmt stdin (could maybe be some problem with your shell / environment / locale) rather than as passing it to rustfmt as a file.

Do the steps from my previous comment don't work for you either?

from svd2rust.

japaric avatar japaric commented on August 27, 2024

The unformatted output is expected and the docs recommend piping svd2rust output before writing it to a file.

And I can't repro the rustfmt / compilation error with the STM32F41x.svd so I'm going to close this. Feel free to open a new issue (with repro steps) if you hit a compiler error with recent versions of svd2rust / rustc.

from svd2rust.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo 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.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.