Forum: Compiler & IDEs WinAVR prototype warning


von Max (Gast)


Lesenswert?

Hallo... kann mir jemand von euch sagen, wie man die warning in WinAVR
abschalten kann, wenn ein prototype fehlt?

Danke und schöne grüße,
Max

von Jörg Wunsch (Gast)


Lesenswert?

Einen Prototypen deklarieren. ;-) Du bist ja nicht mehr bei C < 1989.

Ansonsten steht's im Manual...  Aber ich denke, Du hast schneller den
Prototypen geschrieben (und Dir damit ohnehin einen Gefallen getan),
als das aus dem GCC-Manual gesucht. :-)

von Max (Gast)


Lesenswert?

Hallo!

das lästige ist, dass ich in meinen ganzen libraries und codes
hinzufügen müsst. und außerdem find ich es beuemer, keinen prototype zu
definieren, denn falls ich was an den übergabeparametern ändere, dann
muss ich es auch im prototype ändern und das ist müsahm :-)
kannst du mir sagen, wo ich dieses manual finda und unter welchem punkt
die unterdrückung der warning steht? (hab schon das ganze WinAVR
verzeichnis durchforstet und nicht das richtige gefunden)

danke,
max

von Jörg Wunsch (Gast)


Lesenswert?

Dein Programmierstil erscheint mir gruselig, und deshalb habe ich auch
keine Lust, Dir den Namen der Option zu verraten. ;-)

Hast Du nicht neulich schonmal danach gefragt?

Prototypen deklariert man in einer zentralen Headerdatei (für
externe/globale Funktionen), und man deklariert sie nicht, damit sich
der Compiler nicht mehr beschwert, sondern damit der Compiler auch
eine Chance hat, einem zu sagen, wenn man Unfug zusammenprogrammiert.

Für lokale (static linkage) Funktionen kann man auf die Deklaration
von Prototypen meist ganz verzichten, wenn man die Funktion einfach
mit Prototyp definiert und in der Anordnung immer die Definition vor
der ersten Benutzung stehen hat.

"All the world's a Vax, and any integer can be interpreted as a
pointer" war im letzten Jahrtausend.

von Max (Gast)


Lesenswert?

... sag einfach die option, dann bin ich glücklich. klar richtigerweise
(hab ich auch in der schule so gelernt) sollten oben auch die
prototypes stehen, aber ich möchte nicht meine ganzen codes
aktualisieren müssen.
ja ich habe schon mal gepostet, hab dann nachgesehen, aber nichts
gefunden, deshalt frage ich hier nochal. zuerst hab ich nicht mal
gewusst, dass man diesen "error" abschalten kann.

also danke schon mal und schönen abend,
max

von Stefan Kleinwort (Gast)


Lesenswert?

Hi Max,

überleg Dir das mit den Headerfiles nochmal. Aus eigener Erfahrung kann
ich sagen, dass Fehler bzw. Unterlassen der Prototypen-Definition zu den
widerlichsten Fehlern führen kann. Die Zeit, die Du ziemlich sicher zum
Debuggen brauchst, hast Du besser in die Header investiert.

Übrigens: es ist ja nur eine Warnung, die ich nicht abschalten würde,
weil sie Dich immer wieder auf eine böse Fehlerquelle hinweist. Code
bekommst Du ja trotzdem.

Die Option zum Abschalten kenne ich leider nicht ...

Stefan

von Max (Gast)


Lesenswert?

Hallo.. also mich würde eigentlich nur interessieren, wie ich genau die
warning abschalten kann - bitte um eine konkrete antwort...

schöne grüße,
max

von Matthias (Gast)


Lesenswert?

Hi

RTFM
man gcc

Matthias

von Max (Gast)


Lesenswert?

danke für den tollen hinweis. natürlich hab ich schon in der doc
gesucht, aber nichts gefunden, was mir weitergeholfen hat - deshalb hab
ich ja auch diesen forumeintrag gemacht!

gruß,
max

von Max (Gast)


Lesenswert?

also ich hab jetzt nochmal genau geschaut und bin auf die zeile "-Wall
-Wstrict-prototypes \" gestoßen. jedoch habe ich keine hanung, wie
ich diese abändern muss, um die warning zu unterdrücken (hab schon
versucht einfach rauszulöschen, hat aber nicht geklappt). kann mir da
jemand weiterhelfen?

danke und schöne grüße,
max

von Max (Gast)


Lesenswert?

kann mir bitte jemand weiterhelfen? -  ist ziemlich dringend... denn ich
habe beim jetzigen compiler probleme mit interrupts, die vielleicht bei
der neuen version behoben sind.

danke schon mal und schöne grüße,
max

von Jörg Wunsch (Gast)


Lesenswert?

All unsere Hilfe, Deinen <censored> Code lieber zu reparieren,
schlägst Du ja in den Wind.  Was erwartest Du also noch?

von OldBug (Gast)


Lesenswert?

Ich sag Dir, wie Du die Warnungen ausschalten kannst: einfach die Augen
schliessen!
Ich weis auch nicht, warum Du eine Warnung ausschalten möchtest, die
Dir evtl. den Hinweis auf einen Programmierfehler in Deinen
Interruptroutinen liefert...

von Max (Gast)


Lesenswert?

bitte einfach nur sagen, wie man diesen fehler abschaltet, denn beim
alten WinAVR compiler tritt er ja nicht auf!! will nur wissen, wie man
ihn abschaltet, dann geb ich auch schon ruhe!

gruß,
max

von OldBug (Gast)


Lesenswert?

grummel

Das ist kein Fehler!

von Jörg Wunsch (Gast)


Lesenswert?

Och, laß ihn doch.  Der Thread wird langsam langweilig. ;-)

von Max (Gast)


Lesenswert?

also wenn ihr mich schon unbedinngt nicht helfen wollt, dann sagt mir
wenigstens, wo ich einen konkreten hinweis darauf finde, denn mir
vergeht's auch schon langsam. - immer nur "ungenaue" antworten, die
mich nicht weiterbringen. - ich dachte ich bin hier in einem Forum?!

max

von Jörg Wunsch (Gast)


Lesenswert?

Du hast die Antworten doch schon x-mal bekommen:

. fix your code
. read the *** manual

Zu beidem bist Du offenbar nicht in der Lage. :-(

von OldBug (Gast)


Lesenswert?

*** == fine ;)

von Max (Gast)


Lesenswert?

@jörg
da ich nicht in der lage bin das **** manual zu lese und nicht's
finde, kannst du sicher einen schritt weiter gehen und mir sagen, was
im manual steht (oder herauskopieren etc.), damit ich weis, was ich tun
MUSS.

mex

von Marius (Gast)


Lesenswert?

Hi
Warum willst du den die Warnung auschalten? (Bringt ja nichts)
mfg Marius

von Max (Gast)


Lesenswert?

@Marius
ich will die warning (bei der neusten version von winavr wird es eben
als error angezeigt), weil ich den code sonst nicht compilieren und
testen kann. bei der alten version (ist glaub ich 20040404), bekomme
ich 0 errors.

max

von Jens Kapmeyer (Gast)


Lesenswert?

Hallo Max,
Du hast jetzt schon so oft geschrieben, Deine Libraries müssen ja
riesig sein, sonst hättest Du sie ja stattdessen mit weniger Tipparbeit
schon deine Prototypen eingehämmert ... für einen Unbeteiligten ist der
Thread ein echter Schmunzler, weiter so  :-)

Gruß
Jens

von Jörg Wunsch (Gast)


Lesenswert?

Für einen Beteiligten ist er bloß lächerlich. :-)

von Alexander Höller (Gast)


Lesenswert?

Hallo,

mir hat der Thread ein nächtliches Lächeln bereitet - Danke ;)

@Max:
Bist dir sicher, dass die fehlenden Prototypes den Fehler verursachen?
Hab grad ne Fkt.-Dekleration einkommentiert und avr-gcc meldet mir nur
ein warning und hat brav weiter gerechnet.

von Max (Gast)


Lesenswert?

also ich hab jetzt überall prototypes eingefürt und beende somit den
thread. danke an die die mir helfen wollten!

gruß,
max

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.