Search Results

Search found 5086 results on 204 pages for 'compiler constants'.

Page 21/204 | < Previous Page | 17 18 19 20 21 22 23 24 25 26 27 28  | Next Page >

  • Which LINQ expression is faster

    - by Vlad Bezden
    Hi All In following code public class Person { public string Name { get; set; } public uint Age { get; set; } public Person(string name, uint age) { Name = name; Age = age; } } void Main() { var data = new List<Person>{ new Person("Bill Gates", 55), new Person("Steve Ballmer", 54), new Person("Steve Jobs", 55), new Person("Scott Gu", 35)}; // 1st approach data.Where (x => x.Age > 40).ToList().ForEach(x => x.Age++); // 2nd approach data.ForEach(x => { if (x.Age > 40) x.Age++; }); data.ForEach(x => Console.WriteLine(x)); } in my understanding 2nd approach should be faster since it iterates through each item once and first approach is running 2 times: Where clause ForEach on subset of items from where clause. However internally it might be that compiler translates 1st approach to the 2nd approach anyway and they will have the same performance. Any suggestions or ideas? I could do profiling like suggested, but I want to understand what is going on compiler level if those to lines of code are the same to the compiler, or compiler will treat it literally. Thanks in advance for your help.

    Read the article

  • C++ compilers and back/front ends

    - by aaa
    Hello. for my own education I am curious what compilers use which C++ front-end and backend. Can you enlighten me where the following technologies are used and what hallmarks/advantages they have if any? Open64 - is it backend, front-end, or both? Which compilers use it? I encounter it in cuda compiler. EDG - as far as I can tell this is a backend use by Intel compilers and Comeau. do other compilers use it? I found quite a few references to it in boost source code. ANTLR - this is general parser. Do any common compilers use it? Regarding compilers: with front-end/backend does gcc compiler suite uses? does it have common heritage with any other compiler? what front-end/backend PGI and PathScale compilers use? what front-end/backend XL compiler uses (IBM offering). Thanks.

    Read the article

  • How is machine code understood by the machine

    - by Kraken
    I have a very naive question here, and I would like you to correct me on whatever wrong concepts I put out here. The question is as follows: I have ubuntu installed on my machine, now I write a helloWorld.c program in C language. Now, on the operating system I have a compiler installed, when I execute my helloWorld.c program, the OS schedules the compiler and that basically compiles my code into machine code, which eventually, I execute. Now my kernel code is written in C, then how does my machine interprets that code? Say my kernel code is helloWorld.c, now would not I require any compiler, to compile this code. Also, if I hardcode a compiler in maybe ROM or something, then what language is it written in? Assembly language? Let me know if I have made myself clear with the problem. Thanks. EDIT: By kernel code I mean, the code for operating system. Operating System code. I guess it is written in C right?

    Read the article

  • Need help with BOOST_FOREACH/compiler bug

    - by Jacek Lawrynowicz
    I know that boost or compiler should be last to blame, but I can't see another explanation here. I'm using msvc 2008 SP1 and boost 1.43. In the following code snippet execution never leaves third BOOST_FOREACH loop typedef Graph<unsigned, unsigned>::VertexIterator Iter; Graph<unsigned, unsigned> g; g.createVertex(0x66); // works fine Iter it = g.getVertices().first, end = g.getVertices().second; for(; it != end; ++it) ; // fine std::pair<Iter, Iter> p = g.getVertices(); BOOST_FOREACH(unsigned handle, p) ; // fine unsigned vertex_count = 0; BOOST_FOREACH(unsigned handle, g.getVertices()) vertex_count++; // oops, infinite loop vertex_count = 0; BOOST_FOREACH(unsigned handle, g.getVertices()) vertex_count++; vertex_count = 0; BOOST_FOREACH(unsigned handle, g.getVertices()) vertex_count++; // ... last block repeated 7 times Iterator code: class Iterator : public boost::iterator_facade<Iterator, unsigned const, boost::bidirectional_traversal_tag> { public: Iterator() : list(NULL), handle(INVALID_ELEMENT_HANDLE) {} explicit Iterator(const VectorElementsList &list, unsigned handle = INVALID_ELEMENT_HANDLE) : list(&list), handle(handle) {} friend std::ostream& operator<<(std::ostream &s, const Iterator &it) { s << "[list: " << it.list <<", handle: " << it.handle << "]"; return s; } private: friend class boost::iterator_core_access; void increment() { handle = list->getNext(handle); } void decrement() { handle = list->getPrev(handle); } unsigned const& dereference() const { return handle; } bool equal(Iterator const& other) const { return handle == other.handle && list == other.list; } const VectorElementsList<T> *list; unsigned handle; }; Some ASM fun: vertex_count = 0; BOOST_FOREACH(unsigned handle, g.getVertices()) // initialization 013E1369 mov edi,dword ptr [___defaultmatherr+8 (13E5034h)] // end iterator handle: 0xFFFFFFFF 013E136F mov ebp,dword ptr [esp+0ACh] // begin iterator handle: 0x0 013E1376 lea esi,[esp+0A8h] // begin iterator list pointer 013E137D mov ebx,esi 013E137F nop // forever loop begin 013E1380 cmp ebp,edi 013E1382 jne main+238h (13E1388h) 013E1384 cmp ebx,esi 013E1386 je main+244h (13E1394h) 013E1388 lea eax,[esp+18h] 013E138C push eax // here iterator is incremented in ram 013E138D call boost::iterator_facade<detail::VectorElementsList<Graph<unsigned int,unsigned int>::VertexWrapper>::Iterator,unsigned int const ,boost::bidirectional_traversal_tag,unsigned int const &,int>::operator++ (13E18E0h) 013E1392 jmp main+230h (13E1380h) vertex_count++; // forever loop end It's easy to see that iterator handle is cached in EBP and it never gets incremented despite of a call to iterator operator++() function. I've replaced Itarator implmentation with one deriving from std::iterator and the issue persisted, so this is not iterator_facade fault. This problem exists only on msvc 2008 SP1 x86 and amd64 release builds. Debug builds on msvc 2008 and debug/release builds on msvc 2010 and gcc 4.4 (linux) works fine. Furthermore the BOOST_FOREACH block must be repeaded exacly 10 times. If it's repeaded 9 times, it's all OK. I guess that due to BOOST_FOREACH use of template trickery (const auto_any), compiler assumes that iterator handle is constant and never reads its real value again. I would be very happy to hear that my code is wrong, correct it and move on with BOOST_FOREACH, which I'm very found of (as opposed to BOOST_FOREVER :). May be related to: http://stackoverflow.com/questions/1275852/why-does-boost-foreach-not-work-sometimes-with-c-strings

    Read the article

  • Where do I put constants file for Codeigniter (PHP)?

    - by wag2639
    I have a list of constants (I'm using them as an enum), some are define statements, and some are just global variables. Where am I suppose to put them in the MVC framework so I can use them for both my model and my controller that needs to reference it? I'd rather not stick it into config/constants.php since they shouldn't be called except for by this model and the controllers that use it. Edit 1: Clarification To be more specific, I have my message_model model and it has a bunch of constants that I need that are stored in message_model_constants.php. Where should I put message_model_constants.php and is there a way to have it automatically included by the controller that loads message_model when message_model is not (and I don't want it to be) auto-loaded. Edit 2: I really don't want to have the constants auto-loaded except for when I use the model

    Read the article

  • Building LMMS: "Configuring incomplete, errors occurred!"

    - by fridojet
    I tried to build Linux MultiMedia studio from the source of the SourceForge git:// repository under Ubuntu 12.04 LTS 32b: git clone git://lmms.git.sourceforge.net/gitroot/lmms/lmms cd lmms git checkout First I tried to install all the required libraries and then I cmaked. - That's what happened on cmake (errors occurred!): [DIR]lmms/build$ cmake .. -- The C compiler identification is GNU -- The CXX compiler identification is GNU -- Check for working C compiler: /usr/bin/gcc -- Check for working C compiler: /usr/bin/gcc -- works -- Detecting C compiler ABI info -- Detecting C compiler ABI info - done -- Check for working CXX compiler: /usr/bin/c++ -- Check for working CXX compiler: /usr/bin/c++ -- works -- Detecting CXX compiler ABI info -- Detecting CXX compiler ABI info - done PROCESSOR: i686 Machine: i686-linux-gnu -- Target host is 32 bit -- Looking for include files LMMS_HAVE_STDINT_H -- Looking for include files LMMS_HAVE_STDINT_H - found -- Looking for include files LMMS_HAVE_STDBOOL_H -- Looking for include files LMMS_HAVE_STDBOOL_H - found -- Looking for include files LMMS_HAVE_STDLIB_H -- Looking for include files LMMS_HAVE_STDLIB_H - found -- Looking for include files LMMS_HAVE_PTHREAD_H -- Looking for include files LMMS_HAVE_PTHREAD_H - found -- Looking for include files LMMS_HAVE_SEMAPHORE_H -- Looking for include files LMMS_HAVE_SEMAPHORE_H - found -- Looking for include files LMMS_HAVE_UNISTD_H -- Looking for include files LMMS_HAVE_UNISTD_H - found -- Looking for include files LMMS_HAVE_SYS_TYPES_H -- Looking for include files LMMS_HAVE_SYS_TYPES_H - found -- Looking for include files LMMS_HAVE_SYS_IPC_H -- Looking for include files LMMS_HAVE_SYS_IPC_H - found -- Looking for include files LMMS_HAVE_SYS_SHM_H -- Looking for include files LMMS_HAVE_SYS_SHM_H - found -- Looking for include files LMMS_HAVE_SYS_TIME_H -- Looking for include files LMMS_HAVE_SYS_TIME_H - found -- Looking for include files LMMS_HAVE_SYS_WAIT_H -- Looking for include files LMMS_HAVE_SYS_WAIT_H - found -- Looking for include files LMMS_HAVE_SYS_SELECT_H -- Looking for include files LMMS_HAVE_SYS_SELECT_H - found -- Looking for include files LMMS_HAVE_STDARG_H -- Looking for include files LMMS_HAVE_STDARG_H - found -- Looking for include files LMMS_HAVE_SIGNAL_H -- Looking for include files LMMS_HAVE_SIGNAL_H - found -- Looking for include files LMMS_HAVE_SCHED_H -- Looking for include files LMMS_HAVE_SCHED_H - found -- Looking for include files LMMS_HAVE_SYS_SOUNDCARD_H -- Looking for include files LMMS_HAVE_SYS_SOUNDCARD_H - found -- Looking for include files LMMS_HAVE_SOUNDCARD_H -- Looking for include files LMMS_HAVE_SOUNDCARD_H - not found. -- Looking for include files LMMS_HAVE_FCNTL_H -- Looking for include files LMMS_HAVE_FCNTL_H - found -- Looking for include files LMMS_HAVE_SYS_IOCTL_H -- Looking for include files LMMS_HAVE_SYS_IOCTL_H - found -- Looking for include files LMMS_HAVE_CTYPE_H -- Looking for include files LMMS_HAVE_CTYPE_H - found -- Looking for include files LMMS_HAVE_STRING_H -- Looking for include files LMMS_HAVE_STRING_H - found -- Looking for include files LMMS_HAVE_PROCESS_H -- Looking for include files LMMS_HAVE_PROCESS_H - not found. -- Looking for include files LMMS_HAVE_LOCALE_H -- Looking for include files LMMS_HAVE_LOCALE_H - found -- Looking for Q_WS_X11 -- Looking for Q_WS_X11 - found -- Looking for Q_WS_WIN -- Looking for Q_WS_WIN - not found. -- Looking for Q_WS_QWS -- Looking for Q_WS_QWS - not found. -- Looking for Q_WS_MAC -- Looking for Q_WS_MAC - not found. -- Found Qt4: /usr/bin/qmake (found suitable version "4.8.1", required is "4.6.0;COMPONENTS;QtCore;QtGui;QtXml;QtNetwork") -- Found Qt translations in /usr/share/qt4/translations -- checking for module 'sndfile>=1.0.11' -- found sndfile, version 1.0.25 -- Looking for include files CMAKE_HAVE_PTHREAD_H -- Looking for include files CMAKE_HAVE_PTHREAD_H - found -- Looking for pthread_create in pthreads -- Looking for pthread_create in pthreads - not found -- Looking for pthread_create in pthread -- Looking for pthread_create in pthread - found -- Found Threads: TRUE -- Found libzip: /usr/lib/libzip.so -- Found libflac++: /usr/lib/i386-linux-gnu/libFLAC.so;/usr/lib/i386-linux-gnu/libFLAC++.so -- Found STK: /usr/lib/i386-linux-gnu/libstk.so -- checking for module 'portaudio-2.0' -- found portaudio-2.0, version 19 -- Found Portaudio: portaudio;asound;m;pthread -- checking for module 'libpulse' -- found libpulse, version 1.1 -- Found PulseAudio Simple: /usr/lib/i386-linux-gnu/libpulse.so -- Looking for vorbis_bitrate_addblock in vorbis -- Looking for vorbis_bitrate_addblock in vorbis - found -- Found OggVorbis: /usr/lib/i386-linux-gnu/libogg.so;/usr/lib/i386-linux-gnu/libvorbis.so;/usr/lib/i386-linux-gnu/libvorbisfile.so;/usr/lib/i386-linux-gnu/libvorbisenc.so -- Looking for snd_seq_create_simple_port in asound -- Looking for snd_seq_create_simple_port in asound - found -- Found ALSA: /usr/lib/i386-linux-gnu/libasound.so -- Looking for include files LMMS_HAVE_MACHINE_SOUNDCARD_H -- Looking for include files LMMS_HAVE_MACHINE_SOUNDCARD_H - not found. -- Looking for include files LMMS_HAVE_LINUX_AWE_VOICE_H -- Looking for include files LMMS_HAVE_LINUX_AWE_VOICE_H - not found. -- Looking for include files LMMS_HAVE_AWE_VOICE_H -- Looking for include files LMMS_HAVE_AWE_VOICE_H - not found. -- Looking for include files LMMS_HAVE__USR_SRC_SYS_I386_ISA_SOUND_AWE_VOICE_H -- Looking for include files LMMS_HAVE__USR_SRC_SYS_I386_ISA_SOUND_AWE_VOICE_H - not found. -- Looking for include files LMMS_HAVE__USR_SRC_SYS_GNU_I386_ISA_SOUND_AWE_VOICE_H -- Looking for include files LMMS_HAVE__USR_SRC_SYS_GNU_I386_ISA_SOUND_AWE_VOICE_H - not found. -- Looking for C++ include sys/asoundlib.h -- Looking for C++ include sys/asoundlib.h - found -- Looking for C++ include alsa/asoundlib.h -- Looking for C++ include alsa/asoundlib.h - found -- Looking for snd_pcm_resume in asound -- Looking for snd_pcm_resume in asound - found -- checking for module 'jack>=0.77' -- found jack, version 0.121.2 -- checking for module 'fftw3f>=3.0.0' -- package 'fftw3f>=3.0.0' not found CMake Error at /usr/share/cmake-2.8/Modules/FindPkgConfig.cmake:266 (message): A required package was not found Call Stack (most recent call first): /usr/share/cmake-2.8/Modules/FindPkgConfig.cmake:320 (_pkg_check_modules_internal) CMakeLists.txt:309 (PKG_CHECK_MODULES) -- checking for module 'fluidsynth>=1.0.7' -- found fluidsynth, version 1.1.5 -- Looking for include files LMMS_HAVE_LV2CORE -- Looking for include files LMMS_HAVE_LV2CORE - found -- Looking for include files LMMS_HAVE_SLV2_SCALEPOINTS_H -- Looking for include files LMMS_HAVE_SLV2_SCALEPOINTS_H - not found. -- Looking for slv2_world_new in slv2 -- Looking for slv2_world_new in slv2 - found -- Looking for librdf_new_world in rdf -- Looking for librdf_new_world in rdf - found -- Looking for wine_init in wine -- Looking for wine_init in wine - found -- Looking for C++ include windows.h -- Looking for C++ include windows.h - found -- checking for module 'samplerate>=0.1.7' -- package 'samplerate>=0.1.7' not found -- Performing Test HAVE_LRINT -- Performing Test HAVE_LRINT - Success -- Performing Test HAVE_LRINTF -- Performing Test HAVE_LRINTF - Success -- Performing Test CPU_CLIPS_POSITIVE -- Performing Test CPU_CLIPS_POSITIVE - Failed -- Performing Test CPU_CLIPS_NEGATIVE -- Performing Test CPU_CLIPS_NEGATIVE - Success -- Looking for XOpenDisplay in /usr/lib/i386-linux-gnu/libX11.so;/usr/lib/i386-linux-gnu/libXext.so -- Looking for XOpenDisplay in /usr/lib/i386-linux-gnu/libX11.so;/usr/lib/i386-linux-gnu/libXext.so - found -- Looking for gethostbyname -- Looking for gethostbyname - found -- Looking for connect -- Looking for connect - found -- Looking for remove -- Looking for remove - found -- Looking for shmat -- Looking for shmat - found -- Looking for IceConnectionNumber in ICE -- Looking for IceConnectionNumber in ICE - found -- Found X11: /usr/lib/i386-linux-gnu/libX11.so -- Found Freetype: /usr/lib/i386-linux-gnu/libfreetype.so Installation Summary -------------------- * Install Directory : /usr/local * Use system's libsamplerate : Supported audio interfaces -------------------------- * ALSA : OK * JACK : OK * OSS : OK * PortAudio : OK * PulseAudio : OK * SDL : OK Supported MIDI interfaces ------------------------- * ALSA : OK * OSS : OK * WinMM : <not supported on this platform> Supported file formats for project export ----------------------------------------- * WAVE : OK * OGG/VORBIS : OK * FLAC : OK Optional plugins ---------------- * SoundFont2 player : OK * Stk Mallets : OK * VST-instrument hoster : OK * VST-effect hoster : OK * LV2 hoster : OK * CALF LADSPA plugins : OK * CAPS LADSPA plugins : OK * CMT LADSPA plugins : OK * TAP LADSPA plugins : OK * SWH LADSPA plugins : OK * FL .zip import : OK ----------------------------------------------------------------- IMPORTANT: after installing missing packages, remove CMakeCache.txt before running cmake again! ----------------------------------------------------------------- -- Configuring incomplete, errors occurred! Here are some parts the contents of my lmms/build/CMakeCache.txt file: # This is the CMakeCache file. # For build in directory: /home/jk/Downloads/lmms-git/lmms/build # It was generated by CMake: /usr/bin/cmake # You can edit this file to change values found and used by cmake. # If you do not want to change any of the values, simply exit the editor. # If you do want to change a value, simply edit, save, and exit the editor. # The syntax for the file is as follows: # KEY:TYPE=VALUE # KEY is the name of a variable in the cache. # TYPE is a hint to GUI's for the type of VALUE, DO NOT EDIT TYPE!. # VALUE is the current value for the KEY. ######################## # EXTERNAL cache entries ######################## //Path to a file. ALSA_INCLUDES:PATH=/usr/include //Path to a library. ASOUND_LIBRARY:FILEPATH=/usr/lib/i386-linux-gnu/libasound.so //Path to a program. CMAKE_AR:FILEPATH=/usr/bin/ar //Choose the type of build, options are: None(CMAKE_CXX_FLAGS or // CMAKE_C_FLAGS used) Debug Release RelWithDebInfo MinSizeRel. CMAKE_BUILD_TYPE:STRING= //Enable/Disable color output during build. CMAKE_COLOR_MAKEFILE:BOOL=ON //CXX compiler. CMAKE_CXX_COMPILER:FILEPATH=/usr/bin/c++ //Flags used by the compiler during all build types. CMAKE_CXX_FLAGS:STRING= //Flags used by the compiler during debug builds. CMAKE_CXX_FLAGS_DEBUG:STRING=-g //Flags used by the compiler during release minsize builds. CMAKE_CXX_FLAGS_MINSIZEREL:STRING=-Os -DNDEBUG //Flags used by the compiler during release builds (/MD /Ob1 /Oi // /Ot /Oy /Gs will produce slightly less optimized but smaller // files). CMAKE_CXX_FLAGS_RELEASE:STRING=-O3 -DNDEBUG //Flags used by the compiler during Release with Debug Info builds. CMAKE_CXX_FLAGS_RELWITHDEBINFO:STRING=-O2 -g //C compiler. CMAKE_C_COMPILER:FILEPATH=/usr/bin/gcc //Flags used by the compiler during all build types. CMAKE_C_FLAGS:STRING= //Flags used by the compiler during debug builds. CMAKE_C_FLAGS_DEBUG:STRING=-g //Flags used by the compiler during release minsize builds. CMAKE_C_FLAGS_MINSIZEREL:STRING=-Os -DNDEBUG //Flags used by the compiler during release builds (/MD /Ob1 /Oi // /Ot /Oy /Gs will produce slightly less optimized but smaller // files). CMAKE_C_FLAGS_RELEASE:STRING=-O3 -DNDEBUG //Flags used by the compiler during Release with Debug Info builds. CMAKE_C_FLAGS_RELWITHDEBINFO:STRING=-O2 -g //Flags used by the linker. CMAKE_EXE_LINKER_FLAGS:STRING=' ' //Flags used by the linker during debug builds. CMAKE_EXE_LINKER_FLAGS_DEBUG:STRING= //Flags used by the linker during release minsize builds. CMAKE_EXE_LINKER_FLAGS_MINSIZEREL:STRING= //Flags used by the linker during release builds. CMAKE_EXE_LINKER_FLAGS_RELEASE:STRING= //Flags used by the linker during Release with Debug Info builds. CMAKE_EXE_LINKER_FLAGS_RELWITHDEBINFO:STRING= //Enable/Disable output of compile commands during generation. CMAKE_EXPORT_COMPILE_COMMANDS:BOOL=OFF //Install path prefix, prepended onto install directories. CMAKE_INSTALL_PREFIX:PATH=/usr/local //Path to a program. CMAKE_LINKER:FILEPATH=/usr/bin/ld //Path to a program. CMAKE_MAKE_PROGRAM:FILEPATH=/usr/bin/make //Flags used by the linker during the creation of modules. CMAKE_MODULE_LINKER_FLAGS:STRING=' ' //Flags used by the linker during debug builds. CMAKE_MODULE_LINKER_FLAGS_DEBUG:STRING= //Flags used by the linker during release minsize builds. CMAKE_MODULE_LINKER_FLAGS_MINSIZEREL:STRING= //Flags used by the linker during release builds. CMAKE_MODULE_LINKER_FLAGS_RELEASE:STRING= //Flags used by the linker during Release with Debug Info builds. CMAKE_MODULE_LINKER_FLAGS_RELWITHDEBINFO:STRING= ==[...]== That's a list of the contents of my lmms/build folder: [DIR]lmms/build$ dir CMakeCache.txt CPackSourceConfig.cmake lmmsconfig.h plugins CMakeFiles data lmms.rc CPackConfig.cmake include lmmsversion.h My Question: It just tells me that that "errors" occurred, but I can't see any error message. It seems like everything went fine. - So: Any idea what the problem could be? - Thanks.

    Read the article

  • Why doesn't the Visual Studio C compiler like this? [migrated]

    - by justin
    The following code compiles fine on Linux using gcc -std=c99 but gets the following errors on the Visual Studio 2010 C compiler: Microsoft (R) 32-bit C/C++ Optimizing Compiler Version 16.00.40219.01 for 80x86 Copyright (C) Microsoft Corporation. All rights reserved. fib.c fib.c(42) : error C2057: expected constant expression fib.c(42) : error C2466: cannot allocate an array of constant size 0 fib.c(42) : error C2133: 'num' : unknown size The user inputs the amount of Fibonacci numbers to generate. I'm curious as to why the Microsoft compiler doesn't like this code. http://pastebin.com/z0uEa2zw

    Read the article

  • .NET Compiler Platform (Roslyn) , its relevance to developer community and its performance? [on hold]

    - by jerriclynsjohn
    I'm just starting out with a Code-Quality-plugin development for my organization based on the recently released .NET Compiler Platform APIs (Roslyn APIs). I would like to know what are the most relevant possible ways that it could be used by the developer community apart from the usual IDE experience as answered in other questions. I was wondering the implications of opening up a compiler to general public and never came across anything "breakthrough", that could possibly add up to the value of IDE experiences. Is there any performance bottleneck for its implementation since the compiler itself is managed code?

    Read the article

  • Why won't OpenCV compile in NVCC?

    - by zenna
    Hi there I am trying to integrate CUDA and openCV in a project. Problem is openCV won't compile when NVCC is used, while a normal c++ project compiles just fine. This seems odd to me, as I thought NVCC passed all host code to the c/c++ compiler, in this case the visual studio compiler. The errors I get are? c:\opencv2.0\include\opencv\cxoperations.hpp(1137): error: no operator "=" matches these operands operand types are: const cv::Range = cv::Range c:\opencv2.0\include\opencv\cxoperations.hpp(2469): error: more than one instance of overloaded function "std::abs" matches the argument list: function "abs(long double)" function "abs(float)" function "abs(double)" function "abs(long)" function "abs(int)" argument types are: (ptrdiff_t) So my question is why the difference considering the same compiler (should be) is being used and secondly how I could remedy this.

    Read the article

  • FSharp.Compiler.CodeDom for VS2008 and VS2010 side-by-side

    - by SztupY
    I'm using FSharp.Compiler.CodeDom to dynamically create F# classes. The problem is, that I have both VS2008 and VS2010 on my computer side-by-side (they works fine), and using F# in this configuration is buggy at best: If I don't install InstallFSharp.msi, then under VS2008 the built classes complain about not finding FSharp.Core (even if they're referenced) If I install InstallFSharp.msi, then under VS2008 the built classes will use the F# built for VS2010, and will throw a binary-incompatibility exception, because it will load the .net4 variant: FSC: error FS0219: The referenced or default base CLI library 'mscorlib' is binary- incompatible with the referenced F# core library 'C:\Program Files (x86)\Microsoft F#\v4.0\FSharp.Core.dll'. Consider recompiling the library or making an explicit reference to a version of this library that matches the CLI version you are using. If I replace the F# found at the previous location to the separately installed dll-s, then of course VS2010 will complain about binary-incompatibility Am I overlooking something, or they won't simply work for a shared environment like this? This might mean real problems when I deploy the applications. Thanks

    Read the article

  • Advantages of compilers for functional languages over compilers for imperative languages

    - by Onorio Catenacci
    As a follow up to this question What are the advantages of built-in immutability of F# over C#?--am I correct in assuming that the F# compiler can make certain optimizations knowing that it's dealing with largely immutable code? I mean even if a developer writes "Functional C#" the compiler wouldn't know all of the immutability that the developer had tried to code in so that it couldn't make the same optimizations, right? In general would the compiler of a functional language be able to make optimizations that would not be possible with an imperative language--even one written with as much immutability as possible?

    Read the article

  • Trouble compiling libpng (& zlib) using RVCT 4.0's armcc compiler

    - by Arjun
    Hi, I'm trying to compile libpng & zlib using the RVCT 4.0 armcc compiler. However armcc cannot find 'fcntl.h', which I assume is a standard C library. Cygwin has fcntl.h (and the associated files types.h and _types.h), but when I use those, I get various compilation errors. Should I be using Cygwin's version of standard C libraries, or RVCT's? If the latter is correct, where do I get RVCT's versions of fcntl.h, types.h and _types.h? Thanks! Arjun

    Read the article

  • Disassemble Microsoft Visual Studio 2003 compiler output

    - by Carl Norum
    I'm seeing what I think is strange behaviour from object files output by the Microsoft Visual Studio 2003 tools. The file utility tells me: asmfile.obj: 80386 COFF executable not stripped - version 30821 For objects created by the assembler, but for objects coming from C files, I get just: cfile.obj: data Using Microsoft's dumpbin utility and the objdump I got from cygwin, I can disassemble the assembly-built file, but I get no useful results from either utility for the C-built files. I have a couple of questions related to this difference: What is the object file format generated by the MSVC2003 compiler? How can I disassemble that object file? I am particularly interested in getting the disassembly in AT&T syntax - I'm doing a port of a large source base to make it work with GCC, and I would like to use this method as a shortcut for some of the inline assembly routines in the project. Thanks!

    Read the article

  • RPG compiler converts type S to type P?

    - by derek
    Here is my situation: I have program A which looks like this: Fmfile IF E K DISK USROPN d grue s like(dhseqn) d C *ENTRY PLIST C PARM grue c open mfile c*** do something with grue c close mfile c eval *inlr = *on dhseqn is a 2,0 S field. The compile listing shows me this: *RNF7031 DHSEQN P(2,0) 000200 1000002D GRUE P(2,0) 000200D 000500M 000700 000800M BASED(_QRNL_PRM+) And when I call program A with a parameter that has been declared as 2,0 S, I get a decimal data error. Is this expected, or is this a compiler bug?

    Read the article

  • Objective-C to Java cross compiler

    - by mvid
    It is clear that cross compilers will not be allowed by the Apple App Store, so a developer will need to be familiar with Objective-C to create applications for the iPhone. I was wondering, is there a cross compiler that will take Objective-C application code and rebuild it into a similar Java application that can be packaged for Android? That way, a developer could still learn just one language (obj-c) but put out applications on many devices. I understand that the Java port would be less optimal than a natively coded application, but could conceivably save a developer some time.

    Read the article

  • F# performance question: what is the compiler doing?

    - by Stephen Swensen
    Referencing this code: http://stackoverflow.com/questions/2840714/f-static-member-type-constraints/2842037#2842037 Why is, for example, [1L..100000L] |> List.map (fun n -> factorize gL n) significantly slower than [1L..100000L] |> List.map (fun n -> factorize (G_of 1L) n) By looking at Reflector, I can see that the compiler is treating each of these in very different ways, but there is too much going on for me to decipher the essential difference. Naively I assumed the former would perform better than the later because gL is precomputed whereas G_of 1L has to be computed 100,000 times (at least it appears that way).

    Read the article

  • Is using the keyword var bad in C# 2.0?

    - by Patrick
    I read an article about using C# 3 features in C# 2 where you can for instance type var x = 2; and even if the project is a 2.0 project, the Visual Studio 2008 compiler picks it up and generates the same code as it would if you type int x = 2. But what I don't get is, should you not do this in some cases? I always thought that the var keyword didn't arrive until C# 3.. If the compiler generates the same code and I can type C# 3 code and C# 2 code exactly the same, what is the differance really, because the CLI is the same, right? Quote from the link above Behind the scenes, the compiler generate regular .NET 2.0 code. Is there any difference between .NET 2.0 code and .NET 3 code?

    Read the article

  • Detecting Infinite recursion in Python or dynamic languages

    - by drozzy
    Recently I tried compiling program something like this with GCC: int f(int i){ if(i<0){ return 0;} return f(i-1); and it ran just fine. When I inspected the stack frames the compiler optimized the program to use only one frame, by just jumping back to the beginning of the function and only replacing the arguments to f. And - the compiler wasn't even running in optimized mode. Now, when I try the same thing in Python - I hit maximum recursion wall (or stack overflow). Is there way that a dynamic language like python can take advantage of these nice optimizations? Maybe it's possible to use a compiler instead of an interpreter to make this work? Just curious!

    Read the article

  • Error in Mono Compiler: Files in libraries or multiple-file applications must begin with a namespace

    - by leon
    I am trying to compile this example in mono on ubuntu. However I get the error wingsit@wingsit-laptop:~/MyFS/kitty$ fsc.exe -o kitty.exe kittyAst.fs kittyParser.fs kittyLexer.fs main.fs Microsoft (R) F# 2.0 Compiler build 2.0.0.0 Copyright (c) Microsoft Corporation. All Rights Reserved. /home/wingsit/MyFS/kitty/kittyAst.fs(1,1): error FS0222: Files in libraries or multiple-file applications must begin with a namespace or module declaration, e.g. 'namespace SomeNamespace.SubNamespace' or 'module SomeNamespace.SomeModule' /home/wingsit/MyFS/kitty/kittyParser.fs(2,1): error FS0222: Files in libraries or multiple-file applications must begin with a namespace or module declaration, e.g. 'namespace SomeNamespace.SubNamespace' or 'module SomeNamespace.SomeModule' /home/wingsit/MyFS/kitty/kittyLexer.fsl(2,1): error FS0222: Files in libraries or multiple-file applications must begin with a namespace or module declaration, e.g. 'namespace SomeNamespace.SubNamespace' or 'module SomeNamespace.SomeModule' wingsit@wingsit-laptop:~/MyFS/kitty$ I am a newbie in F#. Is there something obvious I miss?

    Read the article

  • Implicit casting Integer calculation to float in C++

    - by Ziddiri
    Is there any compiler that has a directive or a parameter to cast integer calculation to float implicitly. For example: float f = (1/3)*5; cout << f; the "f" is "0", because calculation's constants(1, 3, 10) are integer. I want to convert integer calculation with a compiler directive or parameter. I mean, I won't use explicit casting or ".f" prefix like that: float f = ((float)1/3)*5; or float f = (1.0f/3.0f)*5.0f; Do you know any c/c++ compiler which has any parameter to do this process without explicit casting or ".f" thing?

    Read the article

  • Java - Creating a Compiler Help

    - by Brian
    So for my programming class we have had a project to create a virtual machine including a memory unit, cpu, Input, Output, Instruction Register, Program Counter, MAR, MDR and so on. Now we need to create a compiler using Java Code that will take a .exe file written in some txt editor and convert it to java byte code and run the code. The code we will be writing in the .exe file is machine code along the lines of: IN X IN Y ADD X STO Y OUT Y STOP DC X 0 DC Y 0 I am just a beginner and only have 2 days to write this and am very lost and have no idea where to start....Any Help will be much appreciated. Thanks

    Read the article

  • C# 'is' type check on struct - odd .NET 4.0 x86 optimization behavior

    - by Jacob Stanley
    Since upgrading to VS2010 I'm getting some very strange behavior with the 'is' keyword. The program below (test.cs) outputs True when compiled in debug mode (for x86) and False when compiled with optimizations on (for x86). Compiling all combinations in x64 or AnyCPU gives the expected result, True. All combinations of compiling under .NET 3.5 give the expected result, True. I'm using the batch file below (runtest.bat) to compile and test the code using various combinations of compiler .NET framework. Has anyone else seen these kind of problems under .NET 4.0? Does everyone else see the same behavior as me on their computer when running runtests.bat? #@$@#$?? Is there a fix for this? test.cs using System; public class Program { public static bool IsGuid(object item) { return item is Guid; } public static void Main() { Console.Write(IsGuid(Guid.NewGuid())); } } runtest.bat @echo off rem Usage: rem runtest -- runs with csc.exe x86 .NET 4.0 rem runtest 64 -- runs with csc.exe x64 .NET 4.0 rem runtest v3.5 -- runs with csc.exe x86 .NET 3.5 rem runtest v3.5 64 -- runs with csc.exe x64 .NET 3.5 set version=v4.0.30319 set platform=Framework for %%a in (%*) do ( if "%%a" == "64" (set platform=Framework64) if "%%a" == "v3.5" (set version=v3.5) ) echo Compiler: %platform%\%version%\csc.exe set csc="C:\Windows\Microsoft.NET\%platform%\%version%\csc.exe" set make=%csc% /nologo /nowarn:1607 test.cs rem CS1607: Referenced assembly targets a different processor rem This happens if you compile for x64 using csc32, or x86 using csc64 %make% /platform:x86 test.exe echo =^> x86 %make% /platform:x86 /optimize test.exe echo =^> x86 (Optimized) %make% /platform:x86 /debug test.exe echo =^> x86 (Debug) %make% /platform:x86 /debug /optimize test.exe echo =^> x86 (Debug + Optimized) %make% /platform:x64 test.exe echo =^> x64 %make% /platform:x64 /optimize test.exe echo =^> x64 (Optimized) %make% /platform:x64 /debug test.exe echo =^> x64 (Debug) %make% /platform:x64 /debug /optimize test.exe echo =^> x64 (Debug + Optimized) %make% /platform:AnyCPU test.exe echo =^> AnyCPU %make% /platform:AnyCPU /optimize test.exe echo =^> AnyCPU (Optimized) %make% /platform:AnyCPU /debug test.exe echo =^> AnyCPU (Debug) %make% /platform:AnyCPU /debug /optimize test.exe echo =^> AnyCPU (Debug + Optimized) Test Results When running the runtest.bat I get the following results on my Win7 x64 install. > runtest 32 v4.0 Compiler: Framework\v4.0.30319\csc.exe False => x86 False => x86 (Optimized) True => x86 (Debug) False => x86 (Debug + Optimized) True => x64 True => x64 (Optimized) True => x64 (Debug) True => x64 (Debug + Optimized) True => AnyCPU True => AnyCPU (Optimized) True => AnyCPU (Debug) True => AnyCPU (Debug + Optimized) > runtest 64 v4.0 Compiler: Framework64\v4.0.30319\csc.exe False => x86 False => x86 (Optimized) True => x86 (Debug) False => x86 (Debug + Optimized) True => x64 True => x64 (Optimized) True => x64 (Debug) True => x64 (Debug + Optimized) True => AnyCPU True => AnyCPU (Optimized) True => AnyCPU (Debug) True => AnyCPU (Debug + Optimized) > runtest 32 v3.5 Compiler: Framework\v3.5\csc.exe True => x86 True => x86 (Optimized) True => x86 (Debug) True => x86 (Debug + Optimized) True => x64 True => x64 (Optimized) True => x64 (Debug) True => x64 (Debug + Optimized) True => AnyCPU True => AnyCPU (Optimized) True => AnyCPU (Debug) True => AnyCPU (Debug + Optimized) > runtest 64 v3.5 Compiler: Framework64\v3.5\csc.exe True => x86 True => x86 (Optimized) True => x86 (Debug) True => x86 (Debug + Optimized) True => x64 True => x64 (Optimized) True => x64 (Debug) True => x64 (Debug + Optimized) True => AnyCPU True => AnyCPU (Optimized) True => AnyCPU (Debug) True => AnyCPU (Debug + Optimized) tl;dr

    Read the article

  • Compiler doesn't find methods from base class

    - by Paul
    I am having a problem with my virtual methods in a derived class. Here are my (simplified) C++ classes. class Base virtual method accept( MyVisitor1* v ) { /*implementation is here*/ }; virtual method accept( MyVisitor2* v ) { /*implementation is here*/ }; virtual method accept( MyVisitor3* v ) { /*implementation is here*/ }; class DerivedClass virtual method accept( MyVisitor2* v ) { /*implementation is here*/ }; The following use causes VS 2005 to give: "error C2664: 'DerivedClass::accept' : cannot convert parameter 1 from 'Visitor1*' to 'Visitor2 *'". DerivedClass c; MyVisitor1 v1; c.accept(v1); I was expecting the compiler to find and call Base::accept(MyVisitor1) for my DerivedClass as well. Obviously this is not working, but I don't understand why. Any ideas? Thanks, Paul

    Read the article

  • Internal compiler error: Could not load type NHibernate.Cfg.Configuration

    - by Simon
    I'm referencing the NHibernate dll version 2.1.2-GA, and am unable to compile under Mono 2.8.1. I've tried using NHibernate 3 instead and it compiles fine. A simple example of the code that's failing is NHibernate.Cfg.Configuration cfg = new NHibernate.Cfg.Configuration(); and the error is Error CS0584: Internal compiler error: Could not load type 'NHibernate.Cfg.Configuration' from assembly 'NHibernate, Version=2.1.2.4000, Culture=neutral, PublicKeyToken=aa95f207798dfdb4'. (CS0584) As mentioned it compiles with no problems using NHibernate 3, does anyone have any ideas how to get it working with NHiberate 2.1.2?

    Read the article

  • Does replacing statements by expressions using the C++ comma operator could allow more compiler opti

    - by Gabriel Cuvillier
    The C++ comma operator is used to chain individual expressions, yielding the value of the last executed expression as the result. For example the skeleton code (6 statements, 6 expressions): step1; step2; if (condition) step3; return step4; else return step5; May be rewritten to: (1 statement, 6 expressions) return step1, step2, condition? step3, step4 : step5; I noticed that it is not possible to perform step-by-step debugging of such code, as the expression chain seems to be executed as a whole. Does it means that the compiler is able to perform special optimizations which are not possible with the traditional statement approach (specially if the steps are const or inline)? Note: I'm not talking about the coding style merit of that way of expressing sequence of expressions! Just about the possible optimisations allowed by replacing statements by expressions.

    Read the article

< Previous Page | 17 18 19 20 21 22 23 24 25 26 27 28  | Next Page >