You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert
Software is Crap Bugs, design failures, and neglected documentation. Let's do better. I know that a lot of people struggle with understanding the memory model introduced in C11/C++11. In a recent conversation I was alerted to the existence of this blog post, which while correct (by my understanding) is in my opinion aimed at those who already have a good understanding of some of the underlying con
RTags is a client/server application that indexes C/C++ code and keeps a persistent file-based database of references, declarations, definitions, symbolnames etc. There’s also limited support for ObjC/ObjC++. It allows you to find symbols by name (including nested class and namespace scope). Most importantly we give you proper follow-symbol and find-references support. We also have neat little thi
関数定義や参照へキーひとつで飛ぶことのできるタグジャンプ。いまやコードリーディングに無くてはならない機能ですが、これを可能にするのがCtagsやGNU GLOBAL (Gtags) といった「インデクサー」です。 本記事では、C/C++用の優れたインデクサーであるRtagsのセットアップの方法、そしてVimとの連携の仕方について書いていきます。 Rtagsの利点 インデクサーは、ソースコードをパースして関数や変数などのシンボル名と位置を記録したタグ(インデックス)データベースを作成するプログラムです。 Ctagsは現在最も広く使われているインデクサーの一つで、Cを始めとしてRubyやPythonなど、40あまりの言語に対応しています。ところがC++では文法の複雑さゆえに内部のパーサーが十分に対応できず、正しくシンボル名を認識できなかったりします。Gtagsも同様の問題を抱えています。 そこ
I’m putting down a marker to counterbalance Daniel Lemire’s post, Best programming language for high performance (January 2017)?. Daniel concludes, essentially, that C and C++ still rule the category. I’ve written a lot of C/C++ criticism for a couple of years now. (OK, more ranting than writing.) Partly this is because I work in computer security, and C and C++ are so very, very, very bad for sec
僕は先日、「コンパイル時Cコンパイラ」なるプログラムをつくって、公開した。 「コンパイル時Cコンパイラ」とは、コンパイルするとC言語プログラムのコンパイルが行われるというようなC++プログラムである。 C++のコンパイル中に C言語プログラムのコンパイルを行う、 "コンパイル時Cコンパイラ"をつくりました #ELVMhttps://t.co/kKiLU3rLFX— うどん (@kw_udon_) 2016年11月18日 自分で書いておいてなんだが、「なんのこっちゃ」という感じではある。(ちゃんと記事中で説明する。) 実際、変なプログラムではあるのだが、とても嬉しいことに多くの人に面白がっていただき、予想だにしなかった大きな反響をいただいた。 Hacker Newsで1位になったり、LLVMの公式ブログで紹介されたり、果てはC++の作者であるBjarne Stroustrupにも言及されるに
A tool for use with clang to analyze #includes in C and C++ source files "Include what you use" means this: for every symbol (type, function variable, or macro) that you use in foo.cc, either foo.cc or foo.h should #include a .h file that exports the declaration of that symbol. The include-what-you-use tool is a program that can be built with the clang libraries in order to analyze #includes of so
わたしがGCCをビルドしていたのは10年以上前なのでピント外れなことをいっているかも知れないけど、当時、GCCがコンパイルできる環境やCコンパイラは少なかった。つまり、特にポータビリティが高いわけではなかった。事実上、それなりに新しい、余力のあるUnixシステムじゃなければ、ポートにはかなりの作業が必要だった。それをする人がいなくなれば、対応システムからハズされるだけ。 それなりに新しいUnixシステムなら、GCCなり、それなりのC++が搭載されているだろうから、GCCがC++で書けていても、特に問題にならない。 以前のように、リアルタイムシステムのようなサードパーティのシステムが豊富にある状況じゃないし、独自のコンピュータのベンダーも減ったしね。Sony NEWSもOMRON LunaもDECもSGIもない。やっぱり、大きな問題はないね。つまらないけど、それが現実。
GCC 4.7 Release Series Changes, New Features, and Fixes Caveats The -fconserve-space flag has been deprecated. The flag had no effect for most targets: only targets without a global .bss section and without support for switchable sections. Furthermore, the flag only had an effect for G++, where it could result in wrong semantics (please refer to the GCC manual for further details). The flag will b
Programming is hard. Programming correct C and C++ is particularly hard. Indeed, both in C and certainly in C++, it is uncommon to see a screenful containing only well defined and conforming code.Why do professional programmers write code like this? Because most programmers do not have a deep understanding of the language they are using.While they sometimes know that certain things are undefined o
Grand Central DispatchはMac OS X 10.6およびiOS 4に追加された新技術だ。 このGrand Central Dispatch(以下"GCD")は、プログラマー以外にその効用を説明することが難しい技術だ。漠然と「マルチコアプロセッサを効率的に使うための技術」と言っておくこともできるが、それじゃあなんでiOS 4に搭載されてんの?という話になってしまう。 これをプログラマー向けに説明するならば、次のような感じになるかと思う。 GCCを拡張してクロージャ的な機能を追加してみたら、非同期処理とか並列処理とかすげー書きやすくなったんで、ちょっとその辺りまとめてみました。 僕の個人的な意見としては、単にAppleのコンパイラー技術者たちがC言語ファミリー(C/C++/Obj-C)にクロージャを追加したかっただけなんじゃないかな、と考えている。 とりあえずマンデルブロ
This release series is no longer maintained. March 13, 2012 The GNU project and the GCC developers are pleased to announce the release of GCC 4.4.7. This release is a bug-fix release, containing fixes for regressions in GCC 4.4.6 relative to previous releases of GCC. Release History GCC 4.4.7 March 13, 2012 (changes) GCC 4.4.6 April 16, 2011 (changes) GCC 4.4.5 October 1, 2010 (changes) GCC 4.4.4
;;; google-c-style.el --- Google's C/C++ style for c-mode ;; Keywords: c, tools ;; google-c-style.el is Copyright (C) 2008 Google Inc. All Rights Reserved. ;; ;; It is free software; you can redistribute it and/or modify it under the ;; terms of either: ;; ;; a) the GNU General Public License as published by the Free Software ;; Foundation; either version 1, or (at your option) any later version,
Quite some time ago I found a brillant and extensive article about linkers from Ian Lance Taylor. (see the appendix for a list of links to all 20 parts.) In part 13 he says: "There are some special challenges when using C++", and he is definitely right. I would like to elaborate on what theses challenges are and how the linker can be a serious trap for C++ developers. I learned it the hard way by
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く