www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Warnung ausblenden - Code Composer Studio


Autor: Baste Rix (basterix)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo zusammen,

ich bekomme beim Compilieren mehrfach die gleiche Warnmeldung.
(warning: nonstandard type for a bit field)

Die Warnung selbst ist nicht weiter kritisch. Doch vor lauter roter 
Warnungen ist es schwer andere vermeintliche Probleme herauszufiltern.

Weiß jemand wie sich bestimmte Typen von Warnungen ausblenden bzw. nicht 
berücksichtigen lassen?


Gruß

Bastian

Autor: Robert (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich habe dieses Problem auch :-(
hat jemand eine Idee was man dagegen tun kann?,
hier meine Deklaration
typedef struct 
{
  unsigned char IHold: 4;
  unsigned char IRun: 4;
  unsigned char VMin: 4;
  unsigned char VMax: 4;
  unsigned char Acc: 4;
  unsigned char Shaft: 1;
  unsigned char StepMode: 2;
  unsigned char AccShape: 1;
  unsigned char TInfo: 2;
  unsigned char TW: 1;
  unsigned char TSD: 1;
  unsigned char UV2: 1;
  unsigned char ElDef: 1;
  unsigned char SteppLoss: 1;
  unsigned char VddReset: 1;
  unsigned char CPFail: 1;
  unsigned char NA: 1;
  unsigned char OVC2: 1;
  unsigned char OVC1: 1;
  unsigned char ESW: 1;
  unsigned char Motion: 3;
}MotorStatus;


Gruß Robert

Autor: Rufus Τ. Firefly (rufus) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Was soll hier das "unsigned char" bewirken?

Das Bitfeld ist in Summe sowieso erheblich größer als ein "unsigned 
char", also kann da auch "unsigned int" hingeschrieben werden.

Autor: Robert (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
und warum?

Autor: Rufus Τ. Firefly (rufus) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Sieh Dir an, wie Bitfelder im C-Standard definiert sind.

Autor: Vlad Tepesch (vlad_tepesch)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
ich würd den Typen generell weglassen und nur unsigned oder signed 
davorschreiben.
da eigendlich sowiso jeder typ unsinnig ist, da die größe ja doch eine 
ganz andere ist.

Autor: Vlad Tepesch (vlad_tepesch)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Rufus t. Firefly schrieb:
> Sieh Dir an, wie Bitfelder im C-Standard definiert sind.

Auf jeden Fall nicht asureichend.
da wichtige details implementation-defined sind, sind bitfelder nicht 
portabel, also leider auch zum Datenaustausch zwischen verschiedenen 
compiler nicht geeignet.

Autor: Rufus Τ. Firefly (rufus) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Und? Das ändert nichts an der Sachlage, daß die Angabe eines im Standard 
nicht vorgesehenen Typspezifizierers den Compiler zur Ausgabe von 
Warnungen veranlasst.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.