Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2007.04.29;
Скачать: CL | DM;

Вниз

Что это: Unsatisfied forward or external declaration: P1202_AdsP   Найти похожие ветки 

 
Чайник ©   (2007-04-06 03:38) [0]

Что за глюк (у меня или у Дельфи)?:

Есть юнит, в секции interface объявляю:

unit P1202_Scan;

interface

uses
 Windows, SysUtils, Classes;

// Function of AD/DA
function  P1202_AdsPolling(fAdVal: PSingle; wNum: Word): Word; stdCall;


в секции implementation соответсвенно:

function  P1202_AdsPolling(fAdVal: PSingle; wNum: Word): Word; stdCall;
begin
...
end;


При попытке компиляции выдает:
 [Error] P1202_Scan.pas(70): Previous declaration of "P1202_AdsPolling" was not marked with the "overload" directive
 [Error] P1202_Scan.pas(16): Unsatisfied forward or external declaration: "P1202_AdsPolling"
 [Fatal Error] P1202_Im.dpr(14): Could not compile used unit "P1202_Scan.pas"

Что это?


 
Чайник ©   (2007-04-06 03:43) [1]

Опечатка: в implementation декларации stdCall нет:

function  P1202_AdsPolling(fAdVal: PSingle; wNum: Word): Word;
begin

end;


 
Чайник ©   (2007-04-06 03:47) [2]

Ну нет уменя никакой "Previous declaration" и не собираюсь я никого "overload" ! Такое впечатление, что компилятор названия функций в interface и interface воспринимает, как разные и не сопоставляет. Что за глюк?!


 
Думкин ©   (2007-04-06 07:06) [3]

Раз говорит, значит есть основания. У меня этот код с теми же названиями откомпилился на ура.


 
Думкин ©   (2007-04-06 07:14) [4]

по написаному вами тут выходит, что ошибка должна вылазить в 9-й строке, а у вас указывается 16.

Следовательно. как и всегда - ошибка в 17-й строке.


 
_Аноним   (2007-04-06 23:13) [5]

Ну вариантов быть не может - проверь, в 17 строке у тебя объявлена еще одна P1202_AdsPolling


 
Leonid Troyanovsky ©   (2007-04-07 00:31) [6]


> Чайник ©   (06.04.07 03:38)  

> // Function of AD/DA
> function  P1202_AdsPolling(fAdVal: PSingle; wNum: Word):
>  Word; stdCall;

function  P1202_AdsPolling(fAdVal: PSingle; wNum: Word): Word; forward;

--
Regards, LVT.


 
Германн ©   (2007-04-07 01:33) [7]


> Чайник ©   (06.04.07 03:38)
>
> Что за глюк (у меня или у Дельфи)?:
>
> Есть юнит, в секции interface объявляю:
>
> unit P1202_Scan;
>
> interface
>
> uses
>  Windows, SysUtils, Classes;
>
> // Function of AD/DA
> function  P1202_AdsPolling(fAdVal: PSingle; wNum: Word):
>  Word; stdCall;
>
> в секции implementation соответсвенно:
>
> function  P1202_AdsPolling(fAdVal: PSingle; wNum: Word):
>  Word; stdCall;
> begin
> ...
> end;
>
> При попытке компиляции выдает:
>  [Error] P1202_Scan.pas(70): Previous declaration of "P1202_AdsPolling"
> was not marked with the "overload" directive
>  [Error] P1202_Scan.pas(16): Unsatisfied forward or external
> declaration: "P1202_AdsPolling"
>  [Fatal Error] P1202_Im.dpr(14): Could not compile used
> unit "P1202_Scan.pas"
>
> Что это?
>


Имхо, ты в своём коде где-то "переопределил", скорее всего, тип PString. Ну или Word.


 
Германн ©   (2007-04-07 01:35) [8]


> Чайник ©   (06.04.07 03:47) [2]
>
> Ну нет уменя никакой "Previous declaration"

"Previous declaration" в данном случае это объявление функции в секции interface.


 
Belorus ©   (2007-04-07 11:08) [9]

Ошибка в 16 строке, это почти то же самое что и в 17... Подозрительный код..


 
DrPass ©   (2007-04-07 21:51) [10]


> Опечатка: в implementation декларации stdCall нет:
>
> function  P1202_AdsPolling(fAdVal: PSingle; wNum: Word):
>  Word;
> begin
>
> end;

Ну так что ж ты хочешь, дорогой?


 
Германн ©   (2007-04-08 00:47) [11]


> DrPass ©   (07.04.07 21:51) [10]


> Ну так что ж ты хочешь, дорогой?
>

Ошибка с этим не связана.


 
Плохиш ©   (2007-04-08 01:14) [12]


> Чайник ©   (06.04.07 03:38)  
> Что за глюк (у меня или у Дельфи)?:

Глюк у тебя. Тут без вариантов.

PS. Неужели так трудно поиск по своему коду сделать?


 
DrPass ©   (2007-04-08 10:18) [13]


> Германн ©   (08.04.07 00:47) [11]

Это понятно :)
Скорее всего, он где-то по коду переопределяет тип параметров, psingle или word.
Хотя в очень редких случаях и у Delphi бывают глюки


 
_Аноним   (2007-04-08 12:23) [14]


> DrPass ©  

Нет, если бы он переопределял тип psingle или word, то текст ошибки компилера был бы другой
а у него

[Error] P1202_Scan.pas(70): Previous declaration of "P1202_AdsPolling" was not marked with the "overload" directive
[Error] P1202_Scan.pas(16): Unsatisfied forward or external declaration: "P1202_AdsPolling"

однозначно еще есть строка в коде с объявлением P1202_AdsPolling


 
Германн ©   (2007-04-08 13:01) [15]


> Аноним   (08.04.07 12:23) [14]
>
> Нет, если бы он переопределял тип psingle или word, то текст
> ошибки компилера был бы другой
> а у него

А ты сам то проверь. Именно такой текст ошибки и есть при переопределении. Слово в слово.


 
Чайник ©   (2007-04-08 13:16) [16]

Всем спасибо! Каюсь - это полностью мой идиотизм. Действительно, было еще одно объявление AdsPolling - в 16 строке на 200 позизии - т.е. далеко вправо за пределами экрана. Вот пример всем мальчикам и девочкам бездумного использования Copy/Paste.


 
Anatoly Podgoretsky ©   (2007-04-08 13:23) [17]

> Чайник  (08.04.2007 13:16:16)  [16]

А Ctrl+F пользоваться не умеешь



Страницы: 1 вся ветка

Текущий архив: 2007.04.29;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.044 c
15-1175721134
Gamer
2007-04-05 01:12
2007.04.29
помогите выбрать звуковуху для старого ПК


8-1155648360
Deka
2006-08-15 17:26
2007.04.29
Подскажите по DSPack. Разбираться нет времени - проект горит.


15-1175409027
Roman_S
2007-04-01 10:30
2007.04.29
Новый компонент без описания и комментариев


2-1176443426
Rezya
2007-04-13 09:50
2007.04.29
Как правельно задать массив.


1-1172659289
Oleg_teacher
2007-02-28 13:41
2007.04.29
Возможна ли вставка в Image gif файла





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский