Ошибка iso c90 запрещает смешение деклараций и кода

When compiling in c, the compiler is giving me a warning telling me that C90 forbids mixing declaration and code, however their is no case of this in my code and the line that it says the warning occurs at is clearly just the declaration of a variable their is no code mixed with it.

This is what my compiler shows

gcc -c Functions.c -Wall -ansi -pedantic
Functions.c:27:18: warning: ISO C90 forbids mixing declarations and code
      [-Wdeclaration-after-statement]
        LinkedListNode* curr;
                        ^
1 warning generated.

This is my function where the warning is occurring

BLUEPIXY's user avatar

BLUEPIXY

39.7k7 gold badges33 silver badges71 bronze badges

asked Oct 25, 2017 at 21:21

Cameron's user avatar

7

In fact there is code inbetween your declarations, the offending line being arraySize = list->numElements. You can move that line further down, after LinkedListNode *curr declaration or merge it with the declaration of arraySize the line before, like this: int arraySize = list->numElements.

answered Oct 25, 2017 at 21:24

lukeg's user avatar

lukeglukeg

4,1893 gold badges19 silver badges40 bronze badges

Я использую следующие флаги (где cc — это gcc 4.2 или clang 8.0):

$ cc -Wall -Werror -pedantic -ansi -std=c89 main.c

(Я знаю, что флаг -ansi в этом случае немного избыточен)

Следующее дает мне ожидаемую ошибку

main.c:31:8: warning: ISO C90 forbids mixing declarations and code [-Wdeclaration-after-statement]
  vec3 abc = {0};
int main()
{
  vec3 a = {0};
  vec3 b = {0};

  Vec3(2, 2, 2);

  vec3 abc = {0}; // Declared after a function call

  return 0;
}

Тем не менее, следующее не

int main()
{
  vec3 a = Vec3(0, 1, 2);
  vec3 b = Vec3(0, 1, 2);

  vec3 abc = {0}; // Declared after a function call

  return 0;
}

Конечно, инициализация переменной с помощью функции все еще считается смешиванием объявлений и кода?

Функция Vec3 очень проста; встроенный флаг не установлен и т. д.

vec3 Vec3(float x, float y, float z)
{
  vec3 rtn = {0};

  rtn.x = x;
  rtn.y = y;
  rtn.z = z;

  return rtn;
}

3 ответа

Лучший ответ

В этом фрагменте кода

  vec3 a = Vec3(0, 1, 2);
  vec3 b = Vec3(0, 1, 2);

  vec3 abc = {0}; // Declared after a function call

Есть только декларации. Там нет никаких заявлений. Вызовы функций, используемые для инициализации переменных, являются выражениями. Это не заявления.

Похоже это предупреждение

предупреждение: ISO C90 запрещает смешивать декларации и код

Сбивает с толку. Правильнее было бы написать, что

предупреждение: ISO C90 запрещает смешивать декларации и заявления

Например, даже избыточная точка с запятой вводит нулевое выражение. Поэтому в общем случае компилятор должен выдавать предупреждение даже для следующего фрагмента кода

  vec3 a = Vec3(0, 1, 2);;
                       ^^^^
  vec3 b = Vec3(0, 1, 2);


9

Vlad from Moscow
26 Ноя 2019 в 19:08

Вторая функция имеет три последовательных определения переменных с инициализаторами — это не проблема.

Что не позволяет C90 (C89), так это объявление после оператора — в данном блоке операторов (между { и }) все объявления должны предшествовать любым операторам (не-объявлениям). Простой вызов функции, не являющийся частью инициализатора, является оператором.

Вот почему GCC сообщает о проблеме -Wdeclaration-after-statement.


5

Jonathan Leffler
26 Ноя 2019 в 11:59

Вы неправильно понимаете ограничение. У нас могут быть объявления с инициализаторами; первый оператор без объявления отмечает конец объявлений, и после этого нам не разрешено больше объявлений в этой области.

Необъявленные операторы могут быть выражениями-выражениями (как указано выше), составными выражениями (такими как if или while) или блоками.


3

Toby Speight
26 Ноя 2019 в 11:59

make -C /lib/modules/2.6.36.4/build M=/home/zaffer/linux modules
make[1]: Entering directory `/usr/src/linux-2.6.36.4′
CC [M] /home/zaffer/linux/lko.o
/home/zaffer/linux/lko.c: In function ‘start’:
/home/zaffer/linux/lko.c:36:10: warning: ISO C90 forbids mixed declarations and code// WAT IS THE ABOVE LINE?……….//…………#######
Building modules, stage 2.
MODPOST 1 modules
WARNING: “scull_open” [/home/zaffer/linux/lko.ko] undefined!
CC /home/zaffer/linux/lko.mod.o
LD [M] /home/zaffer/linux/lko.ko
make[1]: Leaving directory `/usr/src/linux-2.6.36.4′

HEADER FILE
#include
#include
#include
#include
#include
#include
#include

#define SCULL_MAJOR 0

#define SCULL_MINOR 0

#define device_name “ZAFFER”

#define device_no 1

#define NO_OF_DEVICES 1

#ifndef DEBUG
#define DEBUG
#endif

//………………defining file_operations……………

int scull_open(struct inode*,struct file*);
//int scullrelease(struct inode*, struct file* );

//……………….end of functions…………………..

//…………………….major mainor…………………

static int scull_major = SCULL_MAJOR;
static int scull_minor = SCULL_MINOR;
//………….. ……………………….
//……………….structs and declerations…………..
const struct file_operations fops={
.open = scull_open,
// release: scullrelease
};
struct Scull_dev{

struct cdev cdev;

};
struct Scull_dev *sculldev;

//………………………end of declerations………….
MODULE_AUTHOR(“Zaffer”);
MODULE_LICENSE(“GPL”);
//…………………………………………………..
55,1

LKO.C
int reg;
printk(KERN_INFO “Begin : %s\n”,__func__);
printk(KERN_INFO” HELLO KERNEL”);
printk(KERN_INFO “GREAT”);
if(scull_major)
{
dev=MKDEV(scull_major,scull_minor);
reg=register_chrdev_region(dev,scull_major,device_name);
}
else
{

reg=alloc_chrdev_region(&dev,scull_major,device_no,device_name);
scull_major=MAJOR(dev);
}
if(regcdev.owner=THIS_MODULE;
sculldev->cdev.ops=&fops;
cdev_init(&(sculldev->cdev),&fops );
int scull_open(struct inode *inode, struct file *filp)
{
// #ifdef DEBUG
// printk(KERN_INFO “open function performed sucessfully\n”);
— // #endif
return 0;
}
cdev_add(&(sculldev->cdev),dev,1);
return 0;
}
void __exit release(void)
{
#ifdef DEBUG
printk(KERN_INFO “exit : %s\n”,__func__);
#endif

printk(KERN_INFO “BYE KERNEL”);
unregister_chrdev_region(dev,device_no);
kfree(sculldev);
cdev_del(&(sculldev->cdev));

}

ISO C90 is a standard for the C programming language that specifies the rules and guidelines that C compilers should follow. One such rule is that mixed declarations and code are not allowed in C90. This means that all variable declarations must come before any executable statements in a block of code.

What are mixed declarations and code?

Mixed declarations and code refer to the practice of declaring variables and executing code in the same block. For example, consider the following code snippet:

int main() {
   int x = 2;
   printf("The value of x is %d", x);
   int y = 4;
   printf("The value of y is %d", y);
   return 0;
}

In this code, the variable `y` is declared after an executable statement (`printf`), which is not allowed in ISO C90.

How to fix mixed declarations and code?

To fix mixed declarations and code, all variable declarations must come before any executable statements in a block of code. Here is the corrected code:

int main() {
   int x = 2;
   int y = 4;
   printf("The value of x is %d", x);
   printf("The value of y is %d", y);
   return 0;
}

In this code, all variable declarations come before any executable statements, which is allowed in ISO C90.

Conclusion

ISO C90 forbids mixed declarations and code in C. This means that all variable declarations must come before any executable statements in a block of code. By following this rule, your code will be compliant with the ISO C90 standard.

  • Форум русскоязычного сообщества Ubuntu »
  • Архив »
  • Архив »
  • Архив тем до 2016г »
  • Не компилируется rtl8187b-modified
  • Печать

Страницы: [1]   Вниз

Тема: Не компилируется rtl8187b-modified  (Прочитано 2178 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн
Eliriand

Помогите пожалуйста с таким вот вопросом.
Стал я несчастным обладателем карты RTL8187B.
Нашёл решение в виде
http://planeta.rambler.ru/users/crowfish/
всё скачал. сделал по инструкции.
Но вот на шаге ./makedrv возникла проблема.
Драйвер банально не компилируется.
Терминал выдаёт такую вот гадость.

be-luck@be-luck-laptop:/wifi$ sudo ./makedrv
[sudo] password for be-luck:
rm -fr *.mod.c *.mod *.o .*.cmd *.mod.* *.ko *.o *~
make -C /lib/modules/2.6.27-9-generic/build M=/wifi/ieee80211 CC=gcc modules
make[1]: Вход в каталог `/usr/src/linux-headers-2.6.27-9-generic’
  CC [M]  /wifi/ieee80211/ieee80211_softmac.o
In file included from /wifi/ieee80211/ieee80211_softmac.c:17:
/wifi/ieee80211/ieee80211.h: В функции ‘ieee80211_priv’:
/wifi/ieee80211/ieee80211.h:1371: предупреждение: ‘netdev_priv’ is static but used in inline function ‘ieee80211_priv’ which is not static
/wifi/ieee80211/ieee80211_softmac.c: В функции ‘ieee80211_softmac_scan_wq’:
/wifi/ieee80211/ieee80211_softmac.c:432: предупреждение: несовместимый тип указателя в инициализации
/wifi/ieee80211/ieee80211_softmac.c: В функции ‘ieee80211_probe_resp’:
/wifi/ieee80211/ieee80211_softmac.c:709: предупреждение: ISO C90 запрещает смешение деклараций и кода
/wifi/ieee80211/ieee80211_softmac.c:1553:4: warning: #warning CHECK_LOCK_HERE
/wifi/ieee80211/ieee80211_softmac.c:1593:2: warning: #warning CHECK_LOCK_HERE
/wifi/ieee80211/ieee80211_softmac.c: В функции ‘ieee80211_associate_retry_wq’:
/wifi/ieee80211/ieee80211_softmac.c:2251: предупреждение: несовместимый тип указателя в инициализации
/wifi/ieee80211/ieee80211_softmac.c: В функции ‘ieee80211_softmac_init’:
/wifi/ieee80211/ieee80211_softmac.c:2473: предупреждение: несовместимый тип указателя в присваивании
/wifi/ieee80211/ieee80211_softmac.c:2474: предупреждение: несовместимый тип указателя в присваивании
/wifi/ieee80211/ieee80211_softmac.c:2475: предупреждение: несовместимый тип указателя в присваивании
/wifi/ieee80211/ieee80211_softmac.c:2476: предупреждение: несовместимый тип указателя в присваивании
/wifi/ieee80211/ieee80211_softmac.c:2477: предупреждение: несовместимый тип указателя в присваивании
/wifi/ieee80211/ieee80211_softmac.c:2478: предупреждение: несовместимый тип указателя в присваивании
/wifi/ieee80211/ieee80211_softmac.c: В функции ‘ieee80211_associate_complete’:
/wifi/ieee80211/ieee80211_softmac.c:1170: предупреждение: array subscript is above array bounds
/wifi/ieee80211/ieee80211_softmac.c:1553:4: warning: #warning CHECK_LOCK_HERE
/wifi/ieee80211/ieee80211_softmac.c:1593:2: warning: #warning CHECK_LOCK_HERE
  CC [M]  /wifi/ieee80211/ieee80211_rx.o
In file included from /wifi/ieee80211/ieee80211_rx.c:46:
/wifi/ieee80211/ieee80211.h: В функции ‘ieee80211_priv’:
/wifi/ieee80211/ieee80211.h:1371: предупреждение: ‘netdev_priv’ is static but used in inline function ‘ieee80211_priv’ which is not static
  CC [M]  /wifi/ieee80211/ieee80211_tx.o
In file included from /wifi/ieee80211/ieee80211_tx.c:56:
/wifi/ieee80211/ieee80211.h: В функции ‘ieee80211_priv’:
/wifi/ieee80211/ieee80211.h:1371: предупреждение: ‘netdev_priv’ is static but used in inline function ‘ieee80211_priv’ which is not static
  CC [M]  /wifi/ieee80211/ieee80211_wx.o
In file included from /wifi/ieee80211/ieee80211_wx.c:37:
/wifi/ieee80211/ieee80211.h: В функции ‘ieee80211_priv’:
/wifi/ieee80211/ieee80211.h:1371: предупреждение: ‘netdev_priv’ is static but used in inline function ‘ieee80211_priv’ which is not static
/wifi/ieee80211/ieee80211_wx.c: В функции ‘ipw2100_translate_scan’:
/wifi/ieee80211/ieee80211_wx.c:57: предупреждение: в передаче аргумента 1 ‘iwe_stream_add_event’: несовместимый тип указателя
/wifi/ieee80211/ieee80211_wx.c:57: предупреждение: в передаче аргумента 3 ‘iwe_stream_add_event’: несовместимый тип указателя
/wifi/ieee80211/ieee80211_wx.c:57: предупреждение: при передаче аргумента 4 ‘iwe_stream_add_event’ целое преобразуется в указатель без приведения типа
/wifi/ieee80211/ieee80211_wx.c:57: ошибка: слишком мало аргументов в вызове функции ‘iwe_stream_add_event’
/wifi/ieee80211/ieee80211_wx.c:66: предупреждение: в передаче аргумента 1 ‘iwe_stream_add_point’: несовместимый тип указателя
/wifi/ieee80211/ieee80211_wx.c:66: предупреждение: в передаче аргумента 3 ‘iwe_stream_add_point’: несовместимый тип указателя
/wifi/ieee80211/ieee80211_wx.c:66: предупреждение: в передаче аргумента 4 ‘iwe_stream_add_point’: несовместимый тип указателя
/wifi/ieee80211/ieee80211_wx.c:66: ошибка: слишком мало аргументов в вызове функции ‘iwe_stream_add_point’
/wifi/ieee80211/ieee80211_wx.c:69: предупреждение: в передаче аргумента 1 ‘iwe_stream_add_point’: несовместимый тип указателя
/wifi/ieee80211/ieee80211_wx.c:69: предупреждение: в передаче аргумента 3 ‘iwe_stream_add_point’: несовместимый тип указателя
/wifi/ieee80211/ieee80211_wx.c:69: предупреждение: в передаче аргумента 4 ‘iwe_stream_add_point’: несовместимый тип указателя
/wifi/ieee80211/ieee80211_wx.c:69: ошибка: слишком мало аргументов в вызове функции ‘iwe_stream_add_point’
/wifi/ieee80211/ieee80211_wx.c:75: предупреждение: в передаче аргумента 1 ‘iwe_stream_add_event’: несовместимый тип указателя
/wifi/ieee80211/ieee80211_wx.c:75: предупреждение: в передаче аргумента 3 ‘iwe_stream_add_event’: несовместимый тип указателя
/wifi/ieee80211/ieee80211_wx.c:75: предупреждение: при передаче аргумента 4 ‘iwe_stream_add_event’ целое преобразуется в указатель без приведения типа
/wifi/ieee80211/ieee80211_wx.c:75: ошибка: слишком мало аргументов в вызове функции ‘iwe_stream_add_event’
/wifi/ieee80211/ieee80211_wx.c:87: предупреждение: в передаче аргумента 1 ‘iwe_stream_add_event’: несовместимый тип указателя
/wifi/ieee80211/ieee80211_wx.c:87: предупреждение: в передаче аргумента 3 ‘iwe_stream_add_event’: несовместимый тип указателя
/wifi/ieee80211/ieee80211_wx.c:87: предупреждение: при передаче аргумента 4 ‘iwe_stream_add_event’ целое преобразуется в указатель без приведения типа
/wifi/ieee80211/ieee80211_wx.c:87: ошибка: слишком мало аргументов в вызове функции ‘iwe_stream_add_event’
/wifi/ieee80211/ieee80211_wx.c:97: предупреждение: в передаче аргумента 1 ‘iwe_stream_add_event’: несовместимый тип указателя
/wifi/ieee80211/ieee80211_wx.c:97: предупреждение: в передаче аргумента 3 ‘iwe_stream_add_event’: несовместимый тип указателя
/wifi/ieee80211/ieee80211_wx.c:97: предупреждение: при передаче аргумента 4 ‘iwe_stream_add_event’ целое преобразуется в указатель без приведения типа
/wifi/ieee80211/ieee80211_wx.c:97: ошибка: слишком мало аргументов в вызове функции ‘iwe_stream_add_event’
/wifi/ieee80211/ieee80211_wx.c:106: предупреждение: в передаче аргумента 1 ‘iwe_stream_add_point’: несовместимый тип указателя
/wifi/ieee80211/ieee80211_wx.c:106: предупреждение: в передаче аргумента 3 ‘iwe_stream_add_point’: несовместимый тип указателя
/wifi/ieee80211/ieee80211_wx.c:106: предупреждение: в передаче аргумента 4 ‘iwe_stream_add_point’: несовместимый тип указателя
/wifi/ieee80211/ieee80211_wx.c:106: ошибка: слишком мало аргументов в вызове функции ‘iwe_stream_add_point’
/wifi/ieee80211/ieee80211_wx.c:136: предупреждение: в передаче аргумента 1 ‘iwe_stream_add_event’: несовместимый тип указателя
/wifi/ieee80211/ieee80211_wx.c:136: предупреждение: в передаче аргумента 3 ‘iwe_stream_add_event’: несовместимый тип указателя
/wifi/ieee80211/ieee80211_wx.c:136: предупреждение: при передаче аргумента 4 ‘iwe_stream_add_event’ целое преобразуется в указатель без приведения типа
/wifi/ieee80211/ieee80211_wx.c:136: ошибка: слишком мало аргументов в вызове функции ‘iwe_stream_add_event’
/wifi/ieee80211/ieee80211_wx.c:141: предупреждение: в передаче аргумента 1 ‘iwe_stream_add_point’: несовместимый тип указателя
/wifi/ieee80211/ieee80211_wx.c:141: предупреждение: в передаче аргумента 3 ‘iwe_stream_add_point’: несовместимый тип указателя
/wifi/ieee80211/ieee80211_wx.c:141: предупреждение: в передаче аргумента 4 ‘iwe_stream_add_point’: несовместимый тип указателя
/wifi/ieee80211/ieee80211_wx.c:141: ошибка: слишком мало аргументов в вызове функции ‘iwe_stream_add_point’
/wifi/ieee80211/ieee80211_wx.c:157: предупреждение: в передаче аргумента 1 ‘iwe_stream_add_event’: несовместимый тип указателя
/wifi/ieee80211/ieee80211_wx.c:157: предупреждение: в передаче аргумента 3 ‘iwe_stream_add_event’: несовместимый тип указателя
/wifi/ieee80211/ieee80211_wx.c:157: предупреждение: при передаче аргумента 4 ‘iwe_stream_add_event’ целое преобразуется в указатель без приведения типа
/wifi/ieee80211/ieee80211_wx.c:157: ошибка: слишком мало аргументов в вызове функции ‘iwe_stream_add_event’
/wifi/ieee80211/ieee80211_wx.c:164: предупреждение: в передаче аргумента 1 ‘iwe_stream_add_point’: несовместимый тип указателя
/wifi/ieee80211/ieee80211_wx.c:164: предупреждение: в передаче аргумента 3 ‘iwe_stream_add_point’: несовместимый тип указателя
/wifi/ieee80211/ieee80211_wx.c:164: предупреждение: в передаче аргумента 4 ‘iwe_stream_add_point’: несовместимый тип указателя
/wifi/ieee80211/ieee80211_wx.c:164: ошибка: слишком мало аргументов в вызове функции ‘iwe_stream_add_point’
/wifi/ieee80211/ieee80211_wx.c:178: предупреждение: в передаче аргумента 1 ‘iwe_stream_add_point’: несовместимый тип указателя
/wifi/ieee80211/ieee80211_wx.c:178: предупреждение: в передаче аргумента 3 ‘iwe_stream_add_point’: несовместимый тип указателя
/wifi/ieee80211/ieee80211_wx.c:178: предупреждение: в передаче аргумента 4 ‘iwe_stream_add_point’: несовместимый тип указателя
/wifi/ieee80211/ieee80211_wx.c:178: ошибка: слишком мало аргументов в вызове функции ‘iwe_stream_add_point’
/wifi/ieee80211/ieee80211_wx.c:193: предупреждение: в передаче аргумента 1 ‘iwe_stream_add_point’: несовместимый тип указателя
/wifi/ieee80211/ieee80211_wx.c:193: предупреждение: в передаче аргумента 3 ‘iwe_stream_add_point’: несовместимый тип указателя
/wifi/ieee80211/ieee80211_wx.c:193: предупреждение: в передаче аргумента 4 ‘iwe_stream_add_point’: несовместимый тип указателя
/wifi/ieee80211/ieee80211_wx.c:193: ошибка: слишком мало аргументов в вызове функции ‘iwe_stream_add_point’
/wifi/ieee80211/ieee80211_wx.c:204: предупреждение: в передаче аргумента 1 ‘iwe_stream_add_point’: несовместимый тип указателя
/wifi/ieee80211/ieee80211_wx.c:204: предупреждение: в передаче аргумента 3 ‘iwe_stream_add_point’: несовместимый тип указателя
/wifi/ieee80211/ieee80211_wx.c:204: предупреждение: в передаче аргумента 4 ‘iwe_stream_add_point’: несовместимый тип указателя
/wifi/ieee80211/ieee80211_wx.c:204: ошибка: слишком мало аргументов в вызове функции ‘iwe_stream_add_point’
make[2]: *** [/wifi/ieee80211/ieee80211_wx.o] Ошибка 1
make[1]: *** [_module_/wifi/ieee80211] Ошибка 2
make[1]: Выход из каталога `/usr/src/linux-headers-2.6.27-9-generic’
make: *** [modules] Ошибка 2
rm -fr *.mod.c *.mod *.o .*.cmd *.ko *~
make -C /lib/modules/2.6.27-9-generic/build M=/wifi/rtl8187 CC=gcc modules
make[1]: Вход в каталог `/usr/src/linux-headers-2.6.27-9-generic’
  CC [M]  /wifi/rtl8187/r8187_core.o
In file included from /wifi/rtl8187/r8187_core.c:64:
/wifi/rtl8187/r8187.h:48:27: error: asm/semaphore.h: No such file or directory
In file included from /wifi/rtl8187/r8187.h:50,
                 from /wifi/rtl8187/r8187_core.c:64:
/wifi/rtl8187/ieee80211.h: В функции ‘ieee80211_priv’:
/wifi/rtl8187/ieee80211.h:1371: предупреждение: ‘netdev_priv’ is static but used in inline function ‘ieee80211_priv’ which is not static
/wifi/rtl8187/r8187_core.c: В функции ‘rtl8187_rx_urbsubmit’:
/wifi/rtl8187/r8187_core.c:934: предупреждение: в передаче аргумента 6 ‘usb_fill_bulk_urb’: несовместимый тип указателя
/wifi/rtl8187/r8187_core.c: В функции ‘rtl8187_rx_manage_urbsubmit’:
/wifi/rtl8187/r8187_core.c:954: предупреждение: в передаче аргумента 6 ‘usb_fill_bulk_urb’: несовместимый тип указателя
/wifi/rtl8187/r8187_core.c: В функции ‘rtl8180_rtx_disable’:
/wifi/rtl8187/r8187_core.c:1255: предупреждение: формат ‘%d’ предполагает тип ‘int’, но аргумент 2 имеет тип ‘long unsigned int’
/wifi/rtl8187/r8187_core.c: В функции ‘rtl8180_tx’:
/wifi/rtl8187/r8187_core.c:2220: предупреждение: в передаче аргумента 6 ‘usb_fill_bulk_urb’: несовместимый тип указателя
/wifi/rtl8187/r8187_core.c:2227: предупреждение: в передаче аргумента 6 ‘usb_fill_bulk_urb’: несовместимый тип указателя
/wifi/rtl8187/r8187_core.c: В функции ‘rtl8187_usb_initendpoints’:
/wifi/rtl8187/r8187_core.c:2277: предупреждение: ISO C90 запрещает смешение деклараций и кода
/wifi/rtl8187/r8187_core.c:2280: предупреждение: приведение указателя к целому другого размера
/wifi/rtl8187/r8187_core.c:2281: предупреждение: ISO C90 запрещает смешение деклараций и кода
/wifi/rtl8187/r8187_core.c:2290: предупреждение: приведение к типу указателя от целого другого размера
/wifi/rtl8187/r8187_core.c:2310: предупреждение: несовместимый тип указателя в присваивании
/wifi/rtl8187/r8187_core.c:2256: предупреждение: неиспользуемая переменная ‘i’
/wifi/rtl8187/r8187_core.c: В функции ‘rtl8187_usb_deleteendpoints’:
/wifi/rtl8187/r8187_core.c:2328: предупреждение: формат ‘%d’ предполагает тип ‘int’, но аргумент 2 имеет тип ‘long unsigned int’
/wifi/rtl8187/r8187_core.c: На верхнем уровне:
/wifi/rtl8187/r8187_core.c:2435: предупреждение: декларация ‘struct struct_work’ внутри списка параметров
/wifi/rtl8187/r8187_core.c:2435: предупреждение: область действия типа — только данная декларация или определение, что может не соответствовать вашим намерениям
/wifi/rtl8187/r8187_core.c: В функции ‘rtl8180_wmm_param_update’:
/wifi/rtl8187/r8187_core.c:2437: предупреждение: несовместимый тип указателя в инициализации
/wifi/rtl8187/r8187_core.c:2439: предупреждение: несовместимый тип указателя в инициализации
/wifi/rtl8187/r8187_core.c: В функции ‘rtl8180_init’:
/wifi/rtl8187/r8187_core.c:2654: предупреждение: несовместимый тип указателя в присваивании
/wifi/rtl8187/r8187_core.c:2702: предупреждение: несовместимый тип указателя в присваивании
/wifi/rtl8187/r8187_core.c: В функции ‘rtl8180_adapter_start’:
/wifi/rtl8187/r8187_core.c:3054: предупреждение: неиспользуемая переменная ‘bInvalidWirelessMode’
/wifi/rtl8187/r8187_core.c:3053: предупреждение: неиспользуемая переменная ‘SupportedWirelessMode’
/wifi/rtl8187/r8187_core.c:3052: предупреждение: неиспользуемая переменная ‘InitWirelessMode’
/wifi/rtl8187/r8187_core.c:3051: предупреждение: неиспользуемая переменная ‘ieee’
/wifi/rtl8187/r8187_core.c: В функции ‘rtl8180_irq_rx_tasklet’:
/wifi/rtl8187/r8187_core.c:3769: предупреждение: ISO C90 запрещает смешение деклараций и кода
make[2]: *** [/wifi/rtl8187/r8187_core.o] Ошибка 1
make[1]: *** [_module_/wifi/rtl8187] Ошибка 2
make[1]: Выход из каталога `/usr/src/linux-headers-2.6.27-9-generic’
make: *** [modules] Ошибка 2
be-luck@be-luck-laptop:/wifi$

Может быть с этим реально как то бороться?
Заранее спасибо.

« Последнее редактирование: 29 Декабря 2008, 13:05:43 от Eliriand »


Оффлайн
Oleg K


Оффлайн
Eliriand


  • Печать

Страницы: [1]   Вверх

  • Форум русскоязычного сообщества Ubuntu »
  • Архив »
  • Архив »
  • Архив тем до 2016г »
  • Не компилируется rtl8187b-modified

SMF 2.0.19 |
SMF © 2011, Simple Machines | Карта форума

Страница сгенерирована за 0.099 секунд. Запросов: 23.

Понравилась статья? Поделить с друзьями:
  • Ошибка isdone dll при установке симс
  • Ошибка error code nd 12126
  • Ошибка isd dll
  • Ошибка error code 2100012c
  • Ошибка err 604 фсс