Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Потрепаться";
Текущий архив: 2003.05.26;
Скачать: [xml.tar.bz2];

Вниз

Полюбуйтесь на глюк компилятора в D6   Найти похожие ветки 

 
_Igorek   (2003-05-07 11:52) [0]

Если он ТАКОЕ хавает, то что там можно еще ожидать?

procedure TForm1.Button1Click(Sender: TObject);
var
a: Integer;
begin
a := 2 + 2; +++++++++++++++++
a := 2 + 2; +++++++++++++++++
a := 2 + 2; +++++++++++++++++
a := 2 + 2; +++++++++++++++++
a := 2 + 2;
end;


 
Danilka   (2003-05-07 12:05) [1]

_Igorek (07.05.03 11:52)
что можно ожидать от человека, который такое пишет? ;))


 
McSimm   (2003-05-07 12:06) [2]

И чего такого странного в этом?
унарный плюс, просто отбрасывается компилятором.
+a := 2 + 2;


 
uw   (2003-05-07 12:10) [3]

И правда - только в Delphi. В BP 7.0 такой фокус не проходит. Я в этом усматриваю тенденцию продвижения к ++a и a++!


 
_Igorek   (2003-05-07 12:18) [4]

Danilka © (07.05.03 12:05)
Да ладно тебе, это просто пример :-)

McSimm © (07.05.03 12:06)
Не вижу смысла в унарном плюсе.



 
Palladin   (2003-05-07 12:19) [5]


> _Igorek (07.05.03 11:52)

парень, ты не волнуйся, все что может привести к крупномасштабной катастрофе компилятором не примется...


 
_Igorek   (2003-05-07 12:21) [6]

Наверно просто для ясности при написании констант - a := +7


 
DiamondShark   (2003-05-07 12:29) [7]

А синтаксические диаграммы посмотреть?
Можно ведь и так ещё

a := ------------------1;


 
_Igorek   (2003-05-07 12:30) [8]

Palladin © (07.05.03 12:19)

Да ну? Сильно сомневаюсь, но это уже другая тема. Кстати у меня пару раз компилятор выдавал internal error. В хелпе написано: "Once you have identified the problem, we ask that you create the smallest possible test case that still reproduces the error and submit it to Borland."
Так вот. Не все в порядке на этом фронте.


 
_Igorek   (2003-05-07 12:32) [9]

DiamondShark © (07.05.03 12:29)
Каюсь, каюсь... Век живи, век учись. :-)


 
REA   (2003-05-07 12:33) [10]

А в Си есть еще макроподстановки, Template и перегрузка операторов. Вот где разгуляться можно. Никто не угадает, что программист сделал.


 
DiamondShark   (2003-05-07 12:36) [11]


> uw © (07.05.03 12:10)

Нет. В этом другая тенденция.

В ТР7 ведь нельзя было и вот так делать

type
Rec = record a,b,c: integer end;
function Zzz(x, y, z: integer): Rec;
begin
...
end;
...
Zzz(1,2,3).a := 1234;

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


 
Palladin   (2003-05-07 12:37) [12]


> крупномасштабной катастрофе

это я имел в виду нарушение синтаксиса паскаля на столько, что это был бы не паскаль...


 
Palladin   (2003-05-07 12:41) [13]


> DiamondShark © (07.05.03 12:36)

записи можно было возвращать


 
McSimm   (2003-05-07 12:43) [14]

>Не вижу смысла в унарном плюсе.
А его (смысла) и нет :)
Ни в правой, ни в левой части выражения.

Но тем не менее он позволителен и странно что такой пустяк вызвал такую реакцию.


 
Palladin   (2003-05-07 12:48) [15]


> DiamondShark © (07.05.03 12:36)

!!!
прошу прощения...
конечно же нельзя


 
_Igorek   (2003-05-07 12:53) [16]

McSimm © (07.05.03 12:43)

>Но тем не менее он позволителен и странно что такой пустяк вызвал такую реакцию.

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


 
handra   (2003-05-07 13:19) [17]

такое тоже прокатывает:

var rDesk: TRect;
begin
GetWindowRect(GetDesktopWindow,rDes k,);
end;


 
uw   (2003-05-07 13:26) [18]

>DiamondShark © (07.05.03 12:36)

a := 2 + 2; ---

не проходит. Поэтому всего лишь тенденция!



 
_Igorek   (2003-05-07 13:29) [19]

handra © (07.05.03 13:19)
не прокатывает
[Error] Unit1.pas(95): Too many actual parameters


 
handra   (2003-05-07 13:32) [20]

_Igorek (07.05.03 13:29)
Версия Delphi? У меня D7 Ent.


 
_Igorek   (2003-05-07 13:38) [21]

D Ent
Version 6.0
Build 6.163



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

Форум: "Потрепаться";
Текущий архив: 2003.05.26;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.48 MB
Время: 0.007 c
1-83515
sosv
2003-05-13 15:09
2003.05.26
URL


7-83764
Друмлин
2003-03-26 21:04
2003.05.26
как послпть факс?


4-83806
Ик сик
2003-03-28 16:16
2003.05.26
Я пытаюсь поставить hook на нажатие левой кнопки мыши


14-83752
Style
2003-05-07 13:04
2003.05.26
Вот сегодня ровно год как я отслужил срочку.


1-83602
Imshanya
2003-05-14 13:25
2003.05.26
Хочу добавить форме published property





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский