A
A
andydufreyne2012-07-29 12:44:38
C++ / C#
andydufreyne, 2012-07-29 12:44:38

Visual Studio debugger glitch in 64 bits?

void func(RECT rect)
{
  // здесь уже другие координаты
}

RECT r2;
r2.bottom = 0;
r2.right = 0;
r2.left = 0;
r2.top = 0;

func(r2);

everything is fine in 32 bits, in 64 - a glitch (?):
922Wr187.png
Update: this is a glitch of the VS2008 SP1 debugger . Maybe someone knows how to fix it?
There is information that in Visual Studio 2010 the same (!)

Answer the question

In order to leave comments, you need to log in

3 answer(s)
M
Maximus5, 2012-07-29
@Maximus5

there is either a debugger or a compiler buggy. Try like this:
void func(RECT& rect) { RECT r = rect; // и дальше работаем с r a = r.right; }

M
motl, 2012-07-29
@motl

show assembly code. It seems that this function is not called at all in the optimized code, since there is only initialization of a temporary variable in the function body.

I
ixSci, 2012-07-30
@ixSci

in 2012 studios there is no such problem.

Didn't find what you were looking for?

Ask your question

Ask a Question

731 491 924 answers to any question